protected wird nicht als member anerkannt?
-
hallo
bin gerade echt verwirrt - wieso wird jetzt eine protected variable nicht als member einer abgeleiteten klasse gesehen?
class A { protected: int i; }; class B : public A { public: B ( int n ) : i ( n ) { } };ind der compeiler sagt dazu
In constructor ‘B::B(int)’:
error: class ‘B’ does not have any field named ‘i’Was ist passiert? Sollten protected variablen nicht mitvererbt werden?
-
In der Initialisierungsliste kannst du nur die Member der eigenen Klasse und die Basisklasse verwenden - für die Initialisierung von i wäre deshalb der Konstruktor von A verantwortlich.
-
Aso, danke - dachte ich mir schon dass es dafür eine einfache Erklärung geben wird
