Outils pour utilisateurs

Outils du site


lang:cpp:codingstyle

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Prochaine révision
Révision précédente
lang:cpp:codingstyle [2019/12/27 15:34] – Création avec "Formatage du code source via clang-format" rootlang:cpp:codingstyle [2025/10/16 15:49] (Version actuelle) – Ajout d'une image pour le this null root
Ligne 1: Ligne 1:
-====Formatage du code source via clang-format====+=====Formatage=====
  
-J'aime le coding style de Google car : +Utilisation de [[prog:clang-format]].
-  * Faible indentation (2 espaces), +
-Mais avec les modifications suivantes : +
-  * Toujours le crochet ouvrant sur une nouvelle ligne. Quand on clique sur le crochet fermant, on sait dans quelle colonne est le crochet ouvrant quand il est mis en surbrillance. +
-  * On met les références ''&'' et les pointeurs ''*'' du coté du nom de la variable. Cela évite les erreurs avec le code suivant : ''int* a, b;'' qui pourrait laisser croire après une lecture rapide que b est aussi un pointeur.+
  
-<code bash> +Mon style : 
-  clang-format -style="{BasedOnStylegoogleBreakBeforeBraces: CustomBraceWrapping: { AfterClass: trueAfterControlStatement: trueAfterEnum : trueAfterFunction : trueAfterNamespace true, AfterObjCDeclarationtrue, AfterStruct true, AfterUnion true, BeforeCatch true, BeforeElse true, IndentBraces false }, ReflowCommentsfalse, DerivePointerAlignmentfalse, PointerAlignmentRight }" -i file.cpp +  * 2 espaces pour les indentations. 
-</code>+  * ''if'' n'exécute qu'une seule instructionne pas tout écrire sur la même ligne. Quand le code est exécuté en pas à pascela permet de connaître la validité de la condition. 
 +  * Si une méthode n'exécute qu'une seule lignene pas tout écrire sur la même ligne. Sous Visual Studioparfoisle ''this'' n'est affichable que si une instruction est exécutée (pas à pas)y compris en ''Debug''
 + 
 +{{:lang:cpp:codingstyle:two-lines-this-null.png?831|}} 
 + 
 +=====Style de code===== 
 + 
 +Il existe de nombreuses règles de codage. 
 + 
 +  * Documents 
 + 
 +[[prive:lang:c:normes:misra|Misra]] C++ 2023 (pour C++17). 
 + 
 +[[https://isocpp.github.io/CppCoreGuidelines/CppCoreGuidelines|C++ Core Guidelines]] 
 + 
 +[[https://wiki.sei.cmu.edu/confluence/pages/viewpage.action?pageId=88046682|SEI CERT C++ Coding Standard]] 
 + 
 +  * Logiciels 
 + 
 +[[https://clang.llvm.org/extra/clang-tidy/checks/list.html|Liste des règles de clang-tidy]]
lang/cpp/codingstyle.1577457290.txt.gz · Dernière modification : de root