c++中的继承中的问题

来源:互联网 发布:webstorm mac 破解版 编辑:程序博客网 时间:2024/05/21 04:16

继承分为三种方式:public、private、protected

需要注意的问题:

1、派生类的成员函数不能直接访问基类中的私有成员

class A{private:  int num;  int balance;protected:  int hight;public:  int getnum();};int A::getnum(){  num = 10;  return num;}class B:public A//共有继承A{public:  int gethigh();  int getbalance();};int B::gethigh(){  high = 100;  return high;}int B::getbalance(){  balance = 99;  return balance;}int main(void){  B b;  cout<<b.getnum()<<endl;  cout<<b.gethigh()<<endl;  cout<<b.getbalance()<<endl;  return 0;}

上面代码带有balance的操作是错误的,balance为A中的私有成员,但是在B类中用B类的成员函数进行操作,是错误的。和A类中的num形成对比,可以在A中(基类)对私有成员进行操作,但是不能在派生类中用成员函数对基类的私有数据进行操作。

0 0
原创粉丝点击