我正在寻找对我先前问过的问题(How to avoid down-casting when return types are not known at compile time?)的评论的解释
我注意到,如果我更改了下面接受的答案中的最后一段代码,
int main()
{
ConstantNode cnode(10);
BinaryFuncNode bfnode(addI);
bfnode.attach(cnode.get(), cnode.get());
return bfnode.evaluate();
}
我收到一个错误消息,指出在ConstantNode到Node之间不存在适当的转换。这是括号中的注释“注意多态需要指针或引用!”的意思吗?
这到底是什么意思?为什么会这样呢?