我在类中有一些纯虚函数,它在头文件中定义,如下所示:
virtual string GetStdString() = 0
{
// some code
}
在Windows上它工作正常,但使用XCode进行编译我有一个错误
“预期”;'在声明清单的末尾“
指向带有函数名称的行尾。
答案 0 :(得分:2)
您在Windows上使用的任何编译器都是错误的。该代码不应该编译。你可以为纯虚函数提供一个体,但你不能在同一个声明中使用(几乎只是因为标准这样说)。像这样更改你的代码:
class TheClass
{
virtual string GetStdString() = 0;
};
inline string TheClass::GetStdString()
{
// some code
}