Konstantendefinition - besser im Header oder im Quelltext??

30/05/2008 - 10:38 von onlinefloh | Report spam
Moin NG,

ich komme mal wieder mit ner Frage an...

Ich habe in meinem derzeitigen Projekt auch ne Menge String-Konstanten
als Fehlermeldungen. Nun wollte ich die auch aus anderen Modulen nutzen,
habe sie also in ner Headerdatei deklariert. Da mir beim Copy'n'Paste
auch zwei Zeilen mit Initialisierung durchgerutscht sind (also in der
Form extern const char Message[]="Blasülz"; ) hat sich -- natürlich und
zu Recht -- der Compiler über eine nicht erlaubte Reinitialisierung
aufgeregt.

Was mich zur eigentlichen Frage führt:
Sind solche Konstanten eigentlich besser in ner Headerdatei anzusiedeln
oder doch eher im eigentlichen Quelltext? Ich vermute, daß das eher in
Richtung "Geschmackssache, such's Dir aus" gehen dürfte, aber vielleicht
gibt es ja eurerseits gute Argumente, die für oder gegen eine dieser
zwei Lösungen sprechen.

Gruß,
Florian
 

Lesen sie die antworten

#1 Joachim Schmitz
30/05/2008 - 11:48 | Warnen spam
Florian E. Teply wrote:
Moin NG,

ich komme mal wieder mit ner Frage an...

Ich habe in meinem derzeitigen Projekt auch ne Menge String-Konstanten
als Fehlermeldungen. Nun wollte ich die auch aus anderen Modulen
nutzen, habe sie also in ner Headerdatei deklariert. Da mir beim
Copy'n'Paste auch zwei Zeilen mit Initialisierung durchgerutscht sind
(also in der Form extern const char Message[]="Blasülz"; ) hat sich
Reinitialisierung aufgeregt.

Was mich zur eigentlichen Frage führt:
Sind solche Konstanten eigentlich besser in ner Headerdatei
anzusiedeln oder doch eher im eigentlichen Quelltext? Ich vermute,
daß das eher in Richtung "Geschmackssache, such's Dir aus" gehen
dürfte, aber vielleicht gibt es ja eurerseits gute Argumente, die für
oder gegen eine dieser zwei Lösungen sprechen.


Alles was Speicher allokiert gehört in den Quelltext (.c) und nicht in die
Header.

#define MSG1 "Meldung 1"
wàre in .h völlig OK.

Tschö, Jojo

Ähnliche fragen