C++ Vererbungszugriff
Zugriffsspezifizierer
Im Kapitel Zugriffsspezifizierer haben Sie erfahren, dass in C++ drei Spezifizierer verfügbar sind. Bisher haben wir nur public
(auf Mitglieder einer Klasse kann von außerhalb der Klasse zugegriffen werden) und private
verwendet (Auf Mitglieder kann nur innerhalb der Klasse zugegriffen werden.) Der dritte Spezifizierer, protected
, ähnelt private
, kann aber auch im aufgerufen werden geerbte Klasse:
Beispiel
// Basisklasse
class Employee {
protected: // Geschützter Zugriffsspezifizierer
int salary;
};
// Abgeleitete Klasse
class Programmer: public Employee {
public:
int bonus;
void setSalary(int s) {
salary = s;
}
int getSalary() {
return salary;
}
};
int main() {
Programmer myObj;
myObj.setSalary(50000);
myObj.bonus = 15000;
cout << "Salary: " << myObj.getSalary() << "\n";
cout << "Bonus: " << myObj.bonus << "\n";
return 0;
}
Try it Yourself »