【问题标题】:Return value optimization in VC2008VC2008中的返回值优化
【发布时间】:2009-05-17 14:25:35
【问题描述】:

是否有其他技术可以与 VC2008 一起使用,例如 RVO(返回值优化)或 NRVO(命名返回值优化)?

【问题讨论】:

  • 只是想知道,这样我就不会编写无法由我的编译器优化的代码,前提是有可能
  • 别费心了,写没有这种优化的代码,把时间花在考虑算法上。如果一个特定的功能会成为瓶颈,那么只有优化它(但要进行分析以检查它是否是一种优化)

标签: c++ optimization visual-c++-2008 return-value-optimization


【解决方案1】:

如果我是你,我不会太担心这些优化。除此之外,它们不是便携式的。

如果您担心编写高效的 C++ 代码,第一条规则是完全避免复制。确保在所有可能的地方都使用参考,但不要试图在不适合的地方使用它们。之后,有时您实际上需要一个新值 - 例如,作为 operator+() 实现的返回值。

【讨论】:

  • 更有效的 C++ 在 RVO 上有一个项目 ..所以认为了解这些事情会很好
【解决方案2】:

也许this 可以帮助你。

但通常是编译器进行这种优化,而不是你。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-02-02
    • 2016-06-26
    • 1970-01-01
    • 1970-01-01
    • 2015-10-10
    • 2021-06-17
    相关资源
    最近更新 更多