class Foo {
private:
string x;
};
class Bar : public Foo {
public:
void get_data() {
cin >> x;
}
};
我不太明白为什么这行代码不起作用。能做到这一点不就是继承成员变量的目的吗?
最佳答案
这是不可能的。 private
表示变量的名称只能由该类(以及任何 friend
)访问。
访问说明符protected
表示可被该类、派生类和 friend 访问。您可以使 x
受到保护
,或者将 get_data()
移动到 Foo
的公共(public)部分。
关于c++ - 在 C++ 中,如何访问继承类中的私有(private)基成员变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40392701/