Beim Umgestalten einiger habe #definesich in einer C ++ - Header-Datei ähnliche Deklarationen festgestellt:
static const unsigned int VAL = 42;
const unsigned int ANOTHER_VAL = 37;
Die Frage ist, welchen Unterschied wird die statische Aufladung machen, wenn überhaupt? Beachten Sie, dass das mehrfache Einfügen der Header aufgrund des klassischen #ifndef HEADER #define HEADER #endifTricks nicht möglich ist (falls dies wichtig ist).
Bedeutet statisch, dass nur eine Kopie VALerstellt wird, falls der Header in mehr als einer Quelldatei enthalten ist?