获取缺少抽象基类的成员

时间:2013-10-10 09:15:01

标签: c++ inheritance

我试图覆盖抽象基类的所有方法,但我没有得到所有的东西。

我使用msbuild构建项目,该项目由cmake生成。

MSVC ++ 2012编译器抱怨错误error C2259: 'Derived' : cannot instantiate abstract class

所以问题是,如何强制编译器告诉我缺少的方法名称,该类不再是抽象的(并且所有方法都已指定)?

1 个答案:

答案 0 :(得分:4)

查看“输出”窗口,而不是“错误列表”。例如,我的错误列表是:

error C2259: 'Derived' : cannot instantiate abstract class

但我的输出说:

1>c:\users\documents\visual studio 2012\projects\testcpp\test.cpp(18): error C2259: 'Derived' : cannot instantiate abstract class
1>          due to following members:
1>          'void Base::bar(void)' : is abstract
1>          c:\users\documents\visual studio 2012\projects\testcpp\test.cpp(8) : see declaration of 'Base::bar'

许多MSVC错误消息提供了后续行的详细信息,不幸的是,这些消息通常不会进入错误列表。