<分区>
我在贸易公司工作,在这里延迟很重要。分配给我的项目是混合使用 c 和 c++98 部分开发的,但我相信我们可以使用 C++11 制作同一个项目而不会降低效率。正如与我的前辈讨论的那样,他们说你应该坚持使用 C 和 c++03,因为它们在微观层面上比 C++11 更高效。 任何人都可以强调我如果我使用 C++11,我会得到更好的结果吗?
标签 c++ c++11 c++03 low-latency
<分区>
我在贸易公司工作,在这里延迟很重要。分配给我的项目是混合使用 c 和 c++98 部分开发的,但我相信我们可以使用 C++11 制作同一个项目而不会降低效率。正如与我的前辈讨论的那样,他们说你应该坚持使用 C 和 c++03,因为它们在微观层面上比 C++11 更高效。 任何人都可以强调我如果我使用 C++11,我会得到更好的结果吗?
最佳答案
C++11 更快,因为引入了对象移动。主要是在 STL 中使用此功能可以大大加快某些应用程序的速度,而无需更改用户代码。可以比以前更高效地对应用程序进行编程。 constexpr 构造也可以使应用程序启动更快,因为对象可以驻留在小型 Controller 的闪存空间中,而不是将它们复制到 ram 中。还有更多功能有助于提高代码效率。例如,容器的 emplace_back
有助于就地生成对象,而不是创建和复制它们。
C++17 引入了有保证的复制省略,这在很多用例中也加快了速度。
关于c++ - C++11在效率上是否比C++03快?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47324725/