Welches Prä- oder Suffix nutzt ihr für Memberattribute?



  • Privat nutze ich keine Prä-/Suffixe für Variablen (egal welcher Art), wenn eine Unterscheidung zwischen Parameter und Member nötig ist, setze ich ein "this->" vor die Membervariable.

    In der Firma haben wir uns nach zähen Verhandlungen mit unseren Chef dazu durchringen können, wenigstens auf eine unter C++ "üblichere" Schreibweise zu wechseln (m_ statt wie vorher F vor Membervariablen).



  • asc schrieb:

    (m_ statt wie vorher F vor Membervariablen).

    F? lol. War wohl der einzige freie Buchstabe.



  • volkard schrieb:

    asc schrieb:

    (m_ statt wie vorher F vor Membervariablen).

    F? lol. War wohl der einzige freie Buchstabe.

    F wie Field. Ist in Delphi üblich.

    Zum Thema: Man kann drüber streiten, ob ein Präfix sinnvoll ist oder nicht - wichtig ist aber vor allem, daß es einheitlich gehandhabt wird. Und die Einheitlichkeit kommt in C++ ganz fürchterlich zu kurz, man lese nur diesen Thread. Z.B. in Delphi hält sich praktisch jeder an das Object Pascal Style Guide, präfiziert seine Felder mit "F" und seine Typen mit "T" und denkt nicht weiter drüber nach. Lieber einen einheitlich komischen Präfix als zwanzig verschiedene noch so sinnvolle Workarounds 🙂



  • audacia schrieb:

    Lieber einen einheitlich komischen Präfix als zwanzig verschiedene noch so sinnvolle Workarounds 🙂

    Ich bin ehrlich gesagt froh, dass mir C++ nicht den Stil vorschreibt. Solange man innerhalb eines Projekts konsistent ist, sehe ich unterschiedliche Namenskonventionen auch nicht als riesiges Problem. In meinem Code erkenne ich z.B. Bezeichner aus der Standardbibliothek und Boost sofort, weil sie Unterstriche verwenden, was ich selbst nur bei Makros tue.


  • Administrator

    Nexus schrieb:

    Solange man innerhalb eines Projekts konsistent ist, sehe ich unterschiedliche Namenskonventionen auch nicht als riesiges Problem.

    Problem ist aber gerade, dass man nicht konsistent bleiben kann, weil alle Bibliotheken, welche man in C++ verwendet, einen anderen Stil verfolgen. Ich finde es sehr gut, wenn sich alle an den Stil der Standardbibliothek halten.
    Finde ich auch so schön in C#, wo sich wirklich so gut wie jeder an den Stil hält. Dadurch kann man jegliche Bibliothek nehmen und es bleibt ein konsistenter Code.
    (Dies schliesst übrigens Prä- oder Suffixe bei Membervariablen aus, da diese dem Programmierer, welcher die Bibliothek verwendet, normalerweise verborgen bleiben. Mir geht es hier nur um die Schnittstellen)

    In C++ ist wohl das Problem, dass die Standardbibliothek einfach einen zu unpopulären Stil verfolgt.

    Grüssli


Anmelden zum Antworten