Ich weiß, dass es für C++ und Java eine gut etablierte Namenskonvention ist, dass Konstanten in Großbuchstaben geschrieben werden sollten, mit Unterstrichen, um Wörter zu trennen. Wie dieses (Java-Beispiel):Benennung: Warum sollten benannte Konstanten alle Großbuchstaben in C++/Java sein?
public final static Color BACKGROUND_COLOR = Color.WHITE;
public final static Color TEXT_COLOR = Color.BLACK;
Diese Namensgebung zu verstehen Konvention einfach ist und zu folgen, aber ich frage mich, warum wählt diese Namenskonvention über die normale Namens-Konvention für Variablen:
public final static Color backgroundColor = COLOR.WHITE;
public final static Color textColor = COLOR.BLACK;
Es scheint nicht nötig zu sein, das Aussehen von Konstanten zu ändern. Wenn wir ihnen einen Wert zuweisen wollen, wird der Compiler dies sowieso verhindern. Tatsächlich macht es Probleme, wenn später die Konstante in eine richtige Variable geändert wird (weil die Farben zum Beispiel konfigurierbar werden).
Also was ist der ultimative Grund, benannte Konstanten in Großbuchstaben zu schreiben? Historische Gründe?
Es ist eigentlich keine gute Idee Konstanten in Großbuchstaben in C++ zu benennen. ALL_UPPER_CASE ist eine Konvention für Präprozessor-Makros. Daher können Ihre Konstanten mit Präprozessorsymbolen kollidieren und von ihnen überrumpelt werden. –
Dies könnte am besten als Community-Wiki gedient werden – lothar