【发布时间】:2015-07-08 16:48:15
【问题描述】:
我有一个抽象基类,其中一些功能是实现的,一些是纯虚拟的。
从这个基类,我创建了一个实现所有虚函数的派生类。
但是,它仍然抱怨派生类是抽象的。我假设我忘记了实现一种方法,但我看不到是哪一种。有没有办法获取继承的虚拟方法列表?我正在使用 Visual Studio 2010。
【问题讨论】:
-
我无意中定义了一个新函数,它类似于继承的函数,但不一样。因此,对于编译器,我定义了一个新函数而不是实现继承的函数。区别只是一个“&”,因为我从按值调用切换到按引用调用......但是问题仍然存在。
-
在 C++11 或更高版本中,您可以通过将
override添加到任何应该是覆盖的函数的声明中来防止该特定错误。如果它没有覆盖任何内容,您将收到一条友好的错误消息。
标签: c++ visual-studio-2010 inheritance abstract-class pure-virtual