Il a l'avantage d'être applicable automatiquement par l'outil clang-format.
Le framework flair contient le script flair_format_dir qui applique automatiquement le style LLVM à tous les fichiers h et cpp d'un répertoire.
Les sources de flair doivent être formatées par ce script avant d'être publiées.
# Positions relatives des const, & et *
La lecture se fait de droite à gauche par rapport à l'étoile (ou l'esperluette).
Au sein de chacun des blocs situé à gauche et à droite, le choix suivant est décidé
```
int *plop; // pointeur sur entier
int *const plop; // pointeur constant sur entier
const int *plop; // pointeur sur un entier constant
const int *const plop; // pointeur constant sur un entier constant
```
L'étoile ou l'esperluette est collée au nom de la variable ou de la méthode
```
int &toto;
int &Toto();
```
# Nommage des attributs, des méthodes et des classes
Les noms d'attributs commencent par une minuscule.
Les noms de méthodes et de classes commencent par une majuscule.
Les noms longs, composés de plusieurs noms concaténés, sont en camelCase.
Les abréviations sont évitées dans les noms.
Exemple: monBeauEtSympathiqueAttribut est préféré à monBeauSympaAttr (c'est le boulot de l'IDE de faire la complétion et le reformatage)
Quand il y a conflit entre le nom d'un paramètre et le nom d'un attribut (constructeur, setteur...), on préfixe le nom du paramètre par in ou out ou inOut. Ceci uniquement pour l'implémentation de la méthode.