在GCC上编译时,我得到错误:函数定义上的纯指定符,但是当我使用VS2005编译相同的代码时却没有.
class Dummy {
//error: pure-specifier on function-definition, VS2005 compiles
virtual void Process() = 0 {};
};
Run Code Online (Sandbox Code Playgroud)
但是当这个纯虚函数的定义不是内联时,它的工作原理是:
class Dummy
{
virtual void Process() = 0;
};
void Dummy::Process()
{} //compiles on both GCC and VS2005
Run Code Online (Sandbox Code Playgroud)
错误意味着什么?为什么我不能内联?如第二个代码示例所示,避免编译问题是否合法?