C真的比C++快吗?

Shu*_*ham 2 c c++

我以前常常相信,既然C++是C的超集,那么C++的速度应该不如C慢,但很多人都不这么认为,所以/sf/ask/157163751/ -myths/2245221#2245221.

C++比C慢吗?如果没有,为什么要使用C呢?

Bri*_*ndy 11

C++不是C的超集.

程序可以用两种语言制作,这些语言同样有效,或同样糟糕.

这个论点可能来自于任何更高级别的语言,您将拥有更多更高级别的功能,您可能会使用它们.如果您使用较低级别的语言重新实现这些功能,那么您可能会更糟糕.但是没有低级语言可能意味着你不太可能使用它们.

可能你用任何一种语言制作的任何节目,你都不会注意到差异.

  • 另一方面,如果您最终使用C语言中的函数指针数组复制C++ v表,那么您在性能上一无所获,而在简单性方面会失败. (3认同)
  • "这比不这样做稍微慢一些"再次产生误导:因为在需要的地方使用虚拟函数等功能最有可能比其他手工编写而不是编译器生成的等效代码快*. (3认同)
  • 这完全是误导。使用 C++ 的特性并说它们速度较慢只是答案的一半。您不能孤立地看待该功能,您还必须考虑在 C 中实现相同功能的成本。因此,C/C++ 中的等效程序将是相同的。不幸的是,实现已经在 C++ 中自动完成的所有额外功能,您不太可能像在 C 中那样有效地实现该功能(因为编译器团队有 10 年的时间来优化它)。 (2认同)

Joh*_*itb 8

您是否意识到"C++比C慢" 意味着是一个神话,所以它实际上说:"C++是慢于C"?对那个答案的评论并不是很严肃.

C++比C慢吗?如果没有,为什么要使用C呢?

"法拉利比福特慢吗?如果没有,为什么还要使用福特呢?"