Basis-Enum-Klassenvererbung in C
Eine häufige Frage, die bei der C-Programmierung auftritt, ist, ob es möglich ist, eine Aufzählung von einer anderen Aufzählung zu erben. Dies ermöglicht die Erstellung einer abgeleiteten Enumeration, die die in der Basisenum definierten Werte erweitert.
Das bereitgestellte Codebeispiel veranschaulicht, wie eine Basisenum-Klassenvererbung in C erreicht wird:
<code class="cpp">#include <iostream> #include <ostream> class Enum { public: enum { One = 1, Two, Last }; }; class EnumDeriv : public Enum { public: enum { Three = Enum::Last, Four, Five }; }; int main() { std::cout << EnumDeriv::One << std::endl; std::cout << EnumDeriv::Four << std::endl; return 0; }</code>
In diesem Beispiel erbt die EnumDeriv-Klasse von der Enum-Klasse. Der Three-Wert in EnumDeriv ist so definiert, dass er am Ende der in Enum definierten Werte beginnt, was eine nahtlose Fortsetzung der Werte ermöglicht.
Beim Kompilieren und Ausführen des Codes wird Folgendes ausgegeben:
1 4
Dies zeigt die erfolgreiche Vererbung der Werte der Enum-Klasse durch EnumDeriv und die Möglichkeit, zusätzliche Werte in der abgeleiteten Aufzählung zu definieren. Dieses Muster kann nützlich sein, um Aufzählungswerte hierarchischer zu organisieren und zu erweitern.
Das obige ist der detaillierte Inhalt vonKönnen Sie von einer Enum-Klasse in C erben?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!