我需要在我的一个类中创建一个虚函数。不可否认,我在这方面的经验很少,所以我不确定我在定义中做错了什么,但有些东西导致了错误。我的头文件定义如下所示:
void myVirtualFunction() virtual;
我的类定义如下:
void myClass::myVirtualFunction()
{
//code here...
}
但是,当我运行它时,我得到了六个错误,特别是这两个错误中的三对:
C2144: syntax error: 'int' should be preceded by ';'
和
C2208: 'int': no members defined by using this type
我真的对此感到困惑,因为类中没有任何地方(没有其他函数)使用 int 作为参数类型。有谁知道为什么会发生这种情况。谢谢!
(PS:错误消息示例中的任何彩色格式都可以忽略,我不确定如何撤消 SO 的自动格式设置)
最佳答案
在 C++ 中,通过在类中的函数声明前加上 virtual
关键字来声明虚函数。因此你的声明应该是:
virtual void myVirtualFunction();
关于C++虚函数定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19494828/