Headerstruktur



  • hab den header bisher immer so aufgebaut

    Defines
    Makros
    Includes
    Namespaces
    Globale Variablen

    stellt sich nur noch die Frage:
    was mach ich, wenn ich ne globale variable in einer eingebundenen datei brauche ohne spaghetticode zu erzeugen?
    oder gibts ne sinnvollere aufteilung?



  • Was ist der unterschied zwischen defines und makros?
    Wäre es nicht sinnvoller Makros nach den includes zu definieren, da sie sonst auch ungewollte Auswirkungen auf das Eingebundene haben könnten.

    Und warum befindet sich alles in Namensräumen, globale Variablen aber nicht? Wäre es nicht sinnvoll auch die in den Namensraum zu packen?



  • beziehe mich da eher auf die using-direktiven.
    das mit den makros ist richtig, obwohl ich da noch nie n problem hatte.
    wie sind eure header strukturiert?



  • N00Bie schrieb:

    beziehe mich da eher auf die using-direktiven.

    Die sollten in einer Header-Datei aber nicht vorkommen 😉

    wie sind eure header strukturiert?

    include guard

    eigene includes
    system includes
    (manchmal auch anders herum)

    namespace auf

    makros
    typedefs, globale variablen, forwärts deklarationen,...
    klassen
    funktionen

    namespace zu

    wobei ich versuche möglichst wenig verschiedene sachen in einen header zu packen...



  • Shade of Mine was bringt es die Makros in den Namespace zu schreiben?



  • Coci schrieb:

    Shade of Mine was bringt es die Makros in den Namespace zu schreiben?

    Hoffnung, dass es irgendwann präprozessoren gibt, die den scope beachten 🙂

    natürlich bringt es nichts (leider :(). aber sie gehören IMHO dennoch in den namespace - auch wenn sie leider draussen stehen.

    sinn hat es keinen, bzw. genausoviel wie sie nicht in den namespace zu packen 😉


Anmelden zum Antworten