<strong>Naming:</strong> Use meaningful English words, well-known acronyms (MPI, XML, CFD, GMRES, etc.), or well-known short names (Config, Comm, 2D, 3D).<ul><li>Examples: <strong>timeInitial</strong> instead of <strong>tIni</strong>, or <strong>work</strong> instead of <strong>wrk</strong></li><li>One Exception: when redefining long types with the keyword using some mnemonics and short names is allowed, always document scope. </li>
<li><prestyle="border: 0;"><code>```cpp using std::vector <std::vector < < double > > = <strong>vDouble2D;</strong> // local 2D Vector of doubles ```</code></pre></li></ul></li><li>
<li><prestyle="border: 0;">```cpp using std::vector <std::vector < < double > > = <strong>vDouble2D;</strong> // local 2D Vector of doubles ```</pre></li></ul></li><li>
<strong>Avoid underscores:</strong> adds unnecessary length to the variable name, especially when combined with STL container types, and could conflict with name mangling. Reserve it for prefix of special cases (see class members and lambda functions). Use upper case letters instead.<ul><li><code>Don't</code><prestyle="border: 0;"><code> std::vector < std::vector << double >><strong>this_is_my_very_very_long_two_dimensional_vector_name;</strong></code></pre></li><li><code>Do</code><prestyle="border: 0;"><code> std::vector < std::vector << double >><strong>thisIsMyVeryVeryLongTwoDimensionalVectorName;</strong></code></pre></li></ul></li><li>