C++,子类中成员函数的返回类型问题
在我问我的问题之前,我将描述该场景。C++,子类中成员函数" title="成员函数">成员函数的返回类型问题
比方说,我有一个叫BinaryOperator
的类,有两个子类:And
,Or
。
我想知道是否有可能对我来说,And
返回类型为Or*
定义一个函数f()
像这样:
Or* And::f()
而且还Or
返回类型为And*
定义一个函数g()
像这样:
And* Or::g()
当我尝试这样做时,最终出现编译错误,说“'或'没有命名类型”。
请,如果可以,任何清晰度将不胜感激。
回答:
你所寻找的是这样的:
class Or; // <-- forward declaration class And : public BinaryOperator
{
public:
Or* f();
};
class Or : public BinaryOperator
{
public:
And* g();
};
以上是 C++,子类中成员函数的返回类型问题 的全部内容, 来源链接: utcz.com/qa/258997.html