【发布时间】:2013-03-13 03:49:01
【问题描述】:
我目前正在将一些 Unix 代码移植到 Windows,并且遇到了一个相当奇怪的条件运算符用法,根据 Visual Studio(2010 年或 2012 年),这不是有效的语法。
复制粘贴,不加修改:
filename = filename ? : h->filename;
没有条件!我认为它要么是对空字符串(const char* 排序)的检查,要么是对 null 和空的检查,因为我想不出它可以是什么。
以前有人见过吗?谢谢。
【问题讨论】:
-
或stackoverflow.com/questions/2806255/… : "这在 GNU 中被允许作为对 C 的模糊扩展"
-
感谢大家的精彩回答 :)
标签: c++ c conditional-operator