* Naming conventions:
- Generalities:
- In general, names are constructued by using case change to indicate
+ In general, names are constructed by using case change to indicate
separate words, as in ImageDataSize (standing for "image data size").
- Underscores are not used. Variable names are chosen carefully with the
+ Underscores are not used. Variable names are choosen carefully with the
intention to convey the meaning behind the code. Names are generally
spelled out; use of abbreviations is discouraged.
[Note: abbreviation are allowable when in common use, and should be in
Local variables begin in lowercase. There is more flexibility in the
naming of local variables although they still should convey some
semantics.
-
+ - Naming function parameters:
+ Function parameters begin in lowercase. There is more flexibility in the
+ naming of function parameters although they still should convey some
+ semantics.
+
* Classes:
- Don't use the inline keyword when defining an inline function
within a class definition.
{
GroupPixel = groupPixel;
}
+ - Don't use trailing ';' in inline function definition.
+ use :
+ void A::SetGroupPixel( int groupPixel ){GroupPixel = groupPixel;}
+ NOT
+ void A::SetGroupPixel( int groupPixel ){GroupPixel = groupPixel;};
- Do not repeat the virtual keyword when overriding virtual base methods
in declaration of subclasses:
class A
The Doxygen open-source system is used to generate on-line documentation.
Doxygen requires the embedding of simple comments in the code which is in
turn extracted and formatted into documentation. See
- http://www.stack.nl/ dimitri/doxygen/
+ http://www.stack.nl/~dimitri/doxygen/
for more information about Doxygen.
- Documenting a class:
Classes should be documented using the class and brief doxygen commands,
bool Readable = false;
/// \brief The number of lines of the image as interpreted from
- /// the various elements encountered at header parsing.
+ /// the various elements encountered at header parsing.
int NumberOfLines = -1;
/// Predicate implemented as accessor around \ref Readable.
and not
T* foo = 0;
nor
- T * foo;
+ T * foo = 0;
- Assume T is a given type. When declaring or defining with the
"reference to T" notation, the & character must be adjacent to
the variable and not the type. That is use :