关于派生类访问基类私有成员的问题

2024-12-20 12:39:11
推荐回答(2个)
回答1:

基类private的成员是不能够在派生类中被访问到的。你可以这样解决:一种方法是把基类中你想在派生类访问的改成protected访问权限。比如:class yuan
{protected:
double r;
};现在你可以在派生类访问r了。
另一种方法是在基类中添加一个成员函数来获取这个成员变量的值。class yuan
{
double r; public:double GetValueR(){return r;}
};现在你可以在派生类调用GetValueR来获取R值。但是注意GetValueR()这个函数的访问权限必须是public或者protected,如果它本身也是private那么就跟r一样,在派生类是无法访问的了。

回答2:

楼主用的是public 继承,那么你把基类中的r声明为public不就可以直接使用了嘛