Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
dev:dg_code_style_guide [2017/09/13 08:58] – [Curly Braces] devadev:dg_code_style_guide [2024/07/26 10:46] (current) – [Classes] deva
Line 3: Line 3:
 | **//Code is written once by one person but read many times by many people.//** | | **//Code is written once by one person but read many times by many people.//** |
  
-What this essentially boils down to is; don't make syntactic short-cuts that makes it easier to write the code if it makes it harder to read the the code.+What this essentially boils down to is; don't make syntactic short-cuts that makes it easier to write the code if it makes it harder to read the code.
  
 Always write comments to logical blocks in the code that explains for example what a for loop does or how a couple of function calls interact. Always write comments to logical blocks in the code that explains for example what a for loop does or how a couple of function calls interact.
Line 122: Line 122:
 }; };
 </code> </code>
 +
 +Member variables should always be initialized in the header file, and should use the curly-brace notation:
 +<code c++>
 +class MyClass
 +{
 +private:
 +  int some_member_variable{}; // default initialize to 0
 +  int start_position{42}; // default value decided by the developer
 +  static constexpr int step_size{2}; // and use static constexpr whenever possible instead of defines
 +  std::array<int, 5> buckets{}; // default initializes all values at once
 +};
 +</code>
 +
 =====Pointers and References===== =====Pointers and References=====
 Pointer stars and reference ampersands must be placed to the left without space after the type: Pointer stars and reference ampersands must be placed to the left without space after the type:
dev/dg_code_style_guide.1505285913.txt.gz · Last modified: 2017/09/13 08:58 by deva
Trace:
GNU Free Documentation License 1.3
Valid CSS Driven by DokuWiki Recent changes RSS feed Valid XHTML 1.0