这是根据Wikipedia的有关三元运算的GNU扩展。

iMyVal = --iVal ?: iDft;

虽然我完全意识到这是GNU扩展,但是有时使用这种特殊语法可能会非常方便。

那么,有人知道这种语法是否仅在gcc中可用吗?还是他们有其他支持它的编译器?

对于任何有兴趣的人,PHP从5.3开始就支持此语法

提前致谢。

最佳答案

一些答案:

  • GCC-是
  • MSVC-否(基于vanetto的回答)
  • CLANG-否,是的-the LLVM online compiler成功编译了它。
  • Intel C编译器-是

  • 底线-不广泛。只有几乎100%与gcc兼容的Intel编译器支持此功能。

    关于c++ - 这个GNU扩展在三元运算符上有多广泛?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/12420144/

    10-09 08:20