C++虚函数定义

标签 c++ virtual-functions

我需要在我的一个类中创建一个虚函数。不可否认,我在这方面的经验很少,所以我不确定我在定义中做错了什么,但有些东西导致了错误。我的头文件定义如下所示:

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/

相关文章:

c++ - const 引用的默认参数中使用的统一初始值设定项

c++ - 为什么这个数组分配给非指定数组?

c++ - 基本平均程序中的意外数组行为

c++ - 将虚拟方法放在可复制类型上是否是个好主意?

c++ 重数据处理和分页

c++ - virtual 关键字与 *derived* 类中的函数对性能的影响

c++ - 使用工厂方法合并不同的类(c++)

c++ - c++filt 源代码在哪里?

c++ - 从 WndProc 调用 c++ 虚函数失败

c++ - 实现纯虚函数的必要性是什么