|
发表于 2020-10-25 19:10:02
|
显示全部楼层
- #include <iostream>
- using namespace std;
- class Demo
- {
- public:
- double pubvalue = 10;
- void foo()
- {
- cout << "Foo() is called..." << endl;
- }
- protected:
- double provalue = 20;
- void bar()
- {
- cout << "Bar() is called..." << endl;
- }
- private:
- double privalue = 30;
- void kao()
- {
- cout << "Kao() is called..." << endl;
- }
- // friend class Demo1;
- };
- class Demo1: public Demo
- {
- //子类的方法才能访问基类的protected 对象
- public:
- void display()
- {
- cout << provalue << endl;
- }
- };
- class Demo2: public Demo
- {
- };
- int main(void)
- {
- Demo1 d1;
- //你这不叫子类访问父类的变量,你这是在类外部访问类的protected 对象,所以会报错。
- //cout << d1.provalue << endl; // 这句话会报错
- //应该在demo1类里头定义一个方法去访问父类的变量
- d1.display();
- return 0;
- }
复制代码 |
|