【问题标题】:can a C++ function be defined using 'virtual inline'? [duplicate]可以使用“虚拟内联”定义 C++ 函数吗? [复制]
【发布时间】:2017-11-14 09:52:31
【问题描述】:

我看到一个 C++ 函数定义如下:

int virtual inline fun()
{
   return xxx;
}

不知道是什么意思? 谁能解释一下?

【问题讨论】:

  • C/C++ 第一课不存在。
  • 任何函数都可以是inline,但只有非静态类成员函数可以是virtual
  • C/C++ 是 C 和 C++ 中未定义的行为,是第二课。
  • @Bathsheba 重载运算符怎么样?
  • @Quentin 你把事情想得太荒谬了;)

标签: c++ inline virtual


【解决方案1】:

这只是意味着代码无法编译。

只有非静态方法可以是virtual。在您的示例中,fun 是一个免费函数,因此无法将 virtual 应用于它。

【讨论】:

  • 但是这个表单的函数确实退出了。并且可以在我的vs2015中编译成功。
  • @AndrewGong 我非常怀疑。这无法编译。
  • 除非那是一种方法,但你没有在你的帖子中展示它。在您的帖子中,您展示了一个免费功能。那不能编译。如果您拥有的代码和您显示的代码不同,那就是另一个问题。而且我们无法开始猜测您的真实代码是什么。
猜你喜欢
  • 1970-01-01
  • 2013-08-28
  • 2016-02-05
  • 1970-01-01
  • 2017-01-27
  • 2011-04-19
  • 1970-01-01
  • 2012-09-20
  • 1970-01-01
相关资源
最近更新 更多