Inheritance
A derived class has access to protected members of a
base class
/*
#include
class Base {
protected:
int Base_protected_data_x;
public:
Base(): Base_protected_data_x(0) {}
void Set(int i){ Base_protected_data_x = i; }
int Get() { return Base_protected_data_x; }
};
class Derived: public Base
{
private:
int Derived_data_x;
public:
Derived():Derived_data_x(0){}
int function(){ return Base_protected_data_x; }
};
void main()
{
Base B;
cout << "Base_protected_data_x is: " << B.Get() << endl ;
B.Set(10);
cout << "Base_protected_data_x is: " << B.Get() << endl ;
Derived D;
cout << "In derived - Base_protected_data_x is: " << D.Get() <<
endl ;
D.Set(100);
cout << "In derived - Base_protected_data_x is: " << D.Get() <<
endl ;
cout << "In derived - Base_protected_data_x is: " << D.function()
<< endl ;
}
/*
Base_protected_data_x is: 0
Base_protected_data_x is: 10
In derived - Base_protected_data_x is: 0
In derived - Base_protected_data_x is: 100
In derived - Base_protected_data_x is: 100
Press any key to continue
*/
Go Back to Inheritance