我有一个像这样的 A 类和 B 类:
class A
{
public:
A(){}
};
class B : public A
{
public:
B() : A()
{
value = 10;
}
int Value()
{
return value;
}
protected:
int value;
}:
我有这段代码:
int main()
{
A* a = new B();
// how can I access to Value() ? I would like to make that :
int val = a->Value();
// must i cast a to B ? how ?
}
感谢您的帮助。
最佳答案
将 Value() 设为 A 中的纯虚函数(同时添加虚析构函数):
class A
{
public:
A(){}
virtual ~A(){}
virtual int Value() = 0;
};
关于c++ - 如何访问继承成员,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13921884/