#include <iostream> #include <stdio.h>using namespace Std;class test;class Base {protected: int mltem; Private: int mCount; Friend class Test; }; Class Sub:public Base {public: void Test (const sub& sub,const base& Base) { int i=mltem; (A) i = Sub.mltem; (B) i = Base.mltem; (C) }}; Class Test {public : int Count (const base& Base) { return base.mcount; (D) }};int Main () {//Your code goes Herereturn 0;}
Resolution
Answer: C
1. Public Succession:
Derived classes can access non-private members of the base class;
Derived class objects can access the public members of the base class;
2. Private inheritance and protection inheritance:
A derived class can access a non-private member of the base class;
Derived class objects are not accessible to all members of the base class;
Copyright NOTICE: This article for Bo Master original article, without Bo Master permission not reproduced.
The inheritance and access control of ZTE in C + + real problem