【问题标题】:C++0x Lambda Support in GCC for the iPhoneiPhone 的 GCC 中的 C++0x Lambda 支持
【发布时间】:2011-03-16 06:42:48
【问题描述】:

谁能告诉我 GCC 将来是否会支持 iPhone 的 C++ lambda 表达式?

显然,Apple 有他们的自定义“块”支持,所以我想知道这对于 iPhone 平台的可移植 C++0x 代码最终意味着什么?

【问题讨论】:

    标签: iphone gcc lambda c++11


    【解决方案1】:

    除非所有 Apple 工程师突然同时进入需要成人尿布和 24 小时护士的植物人状态,否则未来会得到支持。

    编译器供应商通常会抢先一步,以他们自己的特殊方式添加待处理的功能。这从未阻止他们最终采用新兴标准。在代码块的情况下,语法与 C++1x lambda 正交,可能是故意的,这样它们在采用标准时就不会发生冲突。

    (当然,我可能是错的。:-)

    【讨论】:

    • 我认为苹果仍然在 xcode 的 gcc 4.2 上。他们还有很长的路要走。
    • 我同意,他们将在 C++ 中采用它,或者更确切地说,在未来的 GCC 更新中获得它。但是对于没有 C++1x lambdas 的 Objective-C 来说,块肯定会保留;)
    • 这对于跨平台代码来说会很酷 - GCC 在哪个版本开始顺便支持它?
    【解决方案2】:

    我同意 Apple 块和 C++-0x lambda 在语法上的不同之处足以让 Apple 实现 lambda。潜在的棘手部分可能是在 Objective-C++0X 中同时解析 lambda 捕获 Objective-C 调度语法 ;-)。我认为当 lambdas 进入时,至少在 GCC 中考虑到了这一点,但我认为这个组合并没有受到很大的打击来解决问题。时间会证明一切。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-06-09
      • 2012-09-24
      • 2010-10-14
      • 1970-01-01
      • 2011-02-09
      • 1970-01-01
      • 2014-11-05
      • 2010-11-03
      相关资源
      最近更新 更多