C++ Klassen groß?



  • Mir wurde immer gesagt das man in Java Klassen am Anfang groß schreiben soll, egal um welche Klasse es sich handelt. In C++ mache ich das eigentlich auch immer so, aber als ich grade hier en.cppreference.com/w vorbei geschaut habe, ist mir aufgefallen das in C++ alle standard Klassen klein geschrieben sind. Hat das was zu bedeuten?



  • classmaster schrieb:

    Hat das was zu bedeuten?

    Ja, dass es in C++ keinen einheitlich Akzeptierten Stil gibt. Der Standard schreibt jedenfalls alles außer Templateparameter (und ein paar C-Makros) klein.



  • Ja, dass es in C++ keinen einheitlich Akzeptierten Stil gibt. Der Standard schreibt jedenfalls alles außer Templateparameter (und ein paar C-Makros) klein.

    Sollte ich mich daran halten und die Kleinschreibung in C++ Projekten fortführen um einen einheitlichen Stil zu haben, oder wäre das zu übertrieben? 😃



  • Also ich persönlich mag den Standard-Stil, aber wie gesagt, es gibt da in C++ nichts einheitlich Akzeptiertes. Mach was du gut findest, wichtig ist nur dass du innerhalb eines Projekts dann auch dabei bleibst.



  • cooky451 schrieb:

    wichtig ist nur dass du innerhalb eines Projekts dann auch dabei bleibst.

    👍
    Ich hab folgenden Stil:

    lowerCamelCase für alle Variablen und Funktionen (+Member)
    UpperCamelCase für Klassennamen
    UPPERCASE für Makros

    Edit: Wieso hab' ich das in Quote-Tags gesetzt?



  • Das mit dem einheitlichen Stil ist auch gar nicht so einfach.
    Wenn du reines Standard-C++ verwendest für ein kleines Konsolenprogramm, mag das noch gehen.
    Kommen aber externe Bibliotheken ins Spiel, wird es eng.
    Bei Qt sind Klassen z.B. immer nach dem Schema QFoo benannt, bei MFC CBar usw.
    C-Bibliotheken haben auch gerne ihre eigenen Namensschemata (z.B. WinAPI).
    Dann gibt es ja nicht nur die Benennung von Klassen, Funktionen usw., sondern auch noch das Namespace-Management.
    Während z.B. Boost eine tiefe Verschachtelung betreibt, liegt in der Standardbibliothek alles in std. Andere C++ Bibliotheken nutzen keine Namespaces, sondern gehen quasi den alten C-Weg (z.B. Qt oder wxWidgets).
    Da innerhalb eines Projektes einheitlich zu bleiben ist schierig :>



  • DrakoXP schrieb:

    Da innerhalb eines Projektes einheitlich zu bleiben ist schierig :>

    cooky451's Aussage betrifft wahrscheinlich nur den eigenen Code.

    < 💡 >



  • Sone schrieb:

    Ich hab folgenden Stil:

    lowerCamelCase für alle Variablen und Funktionen (+Member)
    UpperCamelCase für Klassennamen
    UPPERCASE für Makros

    so machen wir es auch



  • cooky451 schrieb:

    classmaster schrieb:

    Hat das was zu bedeuten?

    Ja, dass es in C++ keinen einheitlich Akzeptierten Stil gibt. Der Standard schreibt jedenfalls alles außer Templateparameter (und ein paar C-Makros) klein.

    Ich finde es allerdings schwierig, einen konsistenten Stil zu haben, wenn er permanent mit dem Standard kollidiert.

    Beispiel:
    Typen als UpperCamelCase:

    struct MyContainer{
        class MyNestedClass;
        typedef double value_type;//oops stilbruch
    };
    

    //Edit arrgh es ist noch früh...


Anmelden zum Antworten