-
Notifications
You must be signed in to change notification settings - Fork 1
CodingGuidelines
- summary Dient der Absprache und Festhaltung der syntaktischen Coding Guidelines
Verwendetes Zeichen
1) Leerzeichen
2) 4 Zeichen
3) Alles innerhalb eines Blocks
4) Alles innerhalb einer Class
5) Alles innerhalb eines Structs
6) Alles innheralb eines Enums
7) Case-Statements in Switches
8) Code nach Case
9) Break in Case-Block
1) Immer auf neuer Zeile
2) Einzeiligen IF/FOR/DO/WHILE immer ohne { }
3) Für Konstanten auf selber Zeile, sofern nicht zu lang
1) Immer vor und nach "{" und "}"
2) Immer vor und nach "else"
3) Immer vor und nach "return", "break", "continue"
4) Nach jedem ": type" bei Vererbung hintereinander
1) 120
1) Vor und nach Operatoren => (x && y - a / b) || (x == 14)
1.a) Nicht für "++", "--", Vorzeichen
2) Nach öffnenden Klammern und vor schließenden Klammern keine Leerzeichen
3) Keine nach Methoden-Namen
4) Keine nach Anweisungen (if, for, do, etc) außer "case:"
5) Vor und nach einer Zuweisung => x = 4
6) Nach einem Komma (foo(int x, int y) - int x, y, z;)
6.1) Gilt auch für Template-Parameter
7) Nach einem Semikolon (for(int x=0; x<...)
8) Nicht in "leeren" Arrays (int x[])
9) Nicht bei Index-Zugriff (int x[i])
10) Nicht in eckiger Klammer (int x[])
1) Vor "using"
2) Zwischen "class", "struct", "enum", etc.
3) Zwischen Methoden-Definitionen
4) Nicht zwischen Methoden-Deklarationen
1) Jede logische Operation wird umklammert 2) Jede mathematische Operation wird umklammert, sofern nicht "Punkt vor Strich" (+-*/) gilt.
1) camelCase
2) Voll ausgeschrieben, keine kryptischen Abkürzung
3) Ein-Buchstaben für Schleifen-Variablen sind erlaubt
4) Echte Akronyme nur den Anfangsbuchstaben groß, bzw. klein, wenn erster Buchstabe
1) mit Präfix "m_"
1) kein Präfix
1) Verb am Anfang
2) camelCase
3) Voll ausgeschrieben, keine Abkürzung
1) Großbuchstaben mit Unterstrichen
1) Großbuchstaben mit Unterstrichen
1) Substantiv
2) großer Anfangsbuchstabe
3) Kein Präfix (kein CClass!)
1) Bei includes: / (foward slash)
2) Bei Dateinamen: / (foward slash)
1) Source: `*`.cpp
2) Header: `*`.hpp