اريد طريقه حل هذه الاسئله ضروري
- Consider the following class declarations in C++:
class C {
protected: int x;
public: void f(){...};
};
class C1: public C {
protected: int x1;
public: void h(C *obj){...};
};
class C2: public C1 {
public: int x2;
};
class C3: public C {
public: f(){...};
};
1.1- Draw the class hierarchy
1.2- Assume that main contains the following declaration:
C1 obj1;
For each of the following expressions, say whether it is allowed in the code of main or not (they can be forbidden either because they violate the class definition or the protection mechanism)
obj1.x , obj1.f() , obj1.x1 , obj1.x2