[英]C++ accessing base class members
我试图阐明继承是如何完成家庭作业的。
class AA
{
public:
setAAA();
protected:
int AAA;
};
class BB : public AA
{
public:
setBBB();
private:
int BBB;
};
BB的AA继承会导致BB具有以下成员列表吗? -AAA-BBB-setAAA()-setBBB()
如果可以,为什么我不能执行:
BB Frank;
Frank.setAAA();
它确实意味着这一点,并且确实起作用。 在此处运行代码以进行确认:
http://liveworkspace.org/code/51fd6850ebfb5f86dc61c6dc074fe30a
#include <iostream>
class AA
{
public:
void setAAA() { std::cout << "Setting AAA" << std::endl; };
protected:
int AAA;
};
class BB : public AA
{
public:
void setBBB() {};
private:
int BBB;
};
int main(int argc, char* argv[])
{
BB b;
b.setAAA();
return 0;
}
您的问题是您的方法没有返回类型:)
如果它为什么我不能执行:BB Frank; Frank.setAAA();
好。 首先定义一个返回类型setAAA()
。 例如,使其为void
。
然后可以访问成员函数。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.