<li><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>```cpp
<li>One Exception: when redefining long types with the keyword using some mnemonics and short names is allowed, always document scope. </li>
<li>
```cpp
// local 2D Vector of doubles
usingstd::vector<std::vector<double>>=vDouble2D;
```</li>
</ul>
```</li>
</ul>
<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>