cpp / intermediate
Snippet
Statische Konstanten in Objekt-Vorlagen
Die Kombination 'static constexpr' ermöglicht es, Konstanten auf Klassenebene zu definieren, die zur Kompilierzeit ausgewertet und von allen Instanzen gemeinsam genutzt werden.
snippet.cpp
cpp
1
2
3
4
5
6
7
8
9
class PhysicsEngine {public:static constexpr double GRAVITY = 9.81;};int main() {double currentG = PhysicsEngine::GRAVITY;return 0;}
Erklärung
1
static constexpr double GRAVITY
Wird von allen Objekten geteilt und ist garantiert eine Konstante zur Kompilierzeit.
2
PhysicsEngine::GRAVITY
Zugriff über den Klassennamen, ohne dass die Klasse instanziiert werden muss.