Paramternamen in Headerdateien



  • Mir ist aufgefallen, dass z.B. bei Qt in Headerdateien oft der eigentliche Parametername in Funktionen weggelassen wird.

    void setDefaultUp(bool);
    int heightForWidth(int) const;
    

    Das ist allerdings nicht konsequent durchgeführt, denn oft wird er auch dazugeschrieben

    void setNativeMenuBar(bool nativeMenuBar);
    

    Gibt es da eine Regel? Ich nehme mal an das der Name (im Header) eine für den Compiler überflüssige Angabe ist, die nicht berücksichtigt wird. Wie handhabt ihr das? Lasst ihr den Variablenname auch weg?



  • Ich würde den Namen immer hinschreiben, damit wenn ich oder jemand anderes den Code sieht, ihn auch versteht. Qt ist nicht gerade ein Beispiel für schönes Design - eher im Gegenteil.



  • Ich hatte mal vor einiger Zeit gelesen, dass man sie weg lässt. Finde aber nicht mehr wo. Darum habe ich lieber nochmal nachgefragt. Wäre natürlich praktisch nicht immer die Parameternamen im Source und im Header synchron halten zu müssen. Aber du hast recht ich würde sie auch immer dazuschreiben gerade wenn man nur die Header zusammen mit einer DLL zur Verfügung stellt.



  • StellerFragen schrieb:

    Ich hatte mal vor einiger Zeit gelesen, dass man sie weg lässt.

    Was aber nur eine einzelne Meinung ist.

    Für mich ist der Header der einzige Teil, den ich beim verwenden anschaue, da man niemals gegen die Implementierung sondern die Schnittstelle programmieren sollte. Und da ist die Benennung eine wesentliche Hilfe (Auch steht meine Doxygen-Dokumentation aus dem gleichen Gründen im Header).



  • StellerFragen schrieb:

    Wäre natürlich praktisch nicht immer die Parameternamen im Source und im Header synchron halten zu müssen.

    Dem Compiler sind die Parameternamen im Prototyp egal, also stört es theoretisch auch nicht, wenn sich die Namen bei der Definition unterscheiden (auch wenn es die Verwirrung des Autors erhöht :D).


Log in to reply