如果基类中的数据成员是私有的,那么派生类如何去方位积累中的私有成员呢??
比如:
class student
{
private:
string name;
int num;
}
可以这样解决:
改法一:把基类中你想在派生类访问的改成protected访问权限。
比如:
class student
{
protected:
string name;
int num;
};
现在你可以在派生类访问r了。
另一种方法是在基类中添加一个成员函数来获取这个成员变量的值。
class student
{
public:
int getnum(){return num;}
string getname(){return name;}
private:
string name;
int num;
}
现在你可以在派生类调用getnum和getname来获取num和name的值了。但是注意getname和getnum函数的访问权限必须是public或者protected,
如果它本身也是private那么就跟name和num一样,在派生类是无法访问的了。
注意:有时候积累有可以访问私有数据成员的函数,派生类可以直接调用。