"static const" vs "#define" vs "enum"

Welches besser zu verwenden, die unter den nachstehenden Anweisungen in C?

static const int var = 5;

oder

#define var 5

oder

enum { var = 5 };
Interessanterweise ist das fast genau die gleiche Frage wie stackoverflow.com/questions/1637332/static-const-vs-define. Der einzige Unterschied ist, dass diese Frage über C++, und dieser ist über C. Da meine Antwort war: C++ - spezifische, sage ich, dass Sie nicht identisch sind, aber andere können nicht übereinstimmen.
Nicht identisch, auf jeden Fall. Es gibt eine ganze Menge von Bereichen, in denen C++ es erlaubt, in C-syntax aus Gründen der Kompatibilität. In jenen Fällen, Fragen wie "was ist der beste Weg, um X zu tun" haben wird, unterschiedliche Antworten in C++. E. g. Objekt-Initialisierung.
Auch: stackoverflow.com/questions/1944041/...
Wie ist das keine Meinung? Sie haben jeweils einen anderen Zweck

InformationsquelleAutor Vijay | 2009-11-04

Schreibe einen Kommentar