OOP Lecture 9
OOP Lecture 9
}
Protected Visibility Mode:
In the protected visibility mode, all the members of the base class become protected
members of the derived class. These members are now only accessible by the derived
class and its member functions. These members can also be inherited and will be
accessible to the inherited subclasses. However, objects of the derived classes cannot
access these members outside the class.
class base_class int main()
{private: //class member {
// Accessing members of base_class
int base_private; using object of the derived_class:
protected: //class member derived_class obj;
int base_protected; obj.base_private; // Not accessible
public: //class member obj.base_protected; // Not accessible
obj.base_public; // Not Accessible
int base_public;}; }
class derived_class : protected base_class
{private:
int derived_private;
// int base_private;
protected:
int derived_protected;
// int base_protected;
// int base_public
public:
int derived_public;
};
class base
{ int a; int main()
{
public: int b; derived d;
protected: int c; base ba;
d.set_values(4, 6);
Public: void set_values(int B, int C) d.show();
//ba.set_values(1, 2, 3);
{//a = A;b = B;c = C;
ba.print();
cout << B << c << "IN base class set values" << endl;} cout << "Please enter a value for PC:";
cin >> d.deblic;
void print(){cout << "Value of private variable a is displayed using function //cin >> d.pc;
of base class:" << a<<endl;}};
return 0;
class derived :private base }
{public: int deblic;
protected: int pc;
public:void show()
{//cout << "Value of private b is:" << a; //Error
cout << "Value of protected variable b is:" << b<<endl;
cout << "Value of public variable is: " << c<<endl; }};