C++中的 ?: 是什么意思?

3

我找到了这段代码:

std::string(avdInfo_getSystemImagePath(m_avd)
                                ?: avdInfo_getSystemInitImagePath(m_avd))

我只找到了关于条件运算符的信息:http://www.cplusplus.com/articles/1AUq5Di1/

也就是说,? 和 : 是分开的。但是当它们放在一起时,这意味着什么?avdInfo_getSystemImagePathavdInfo_getSystemInitImagePath 都返回 char*

1个回答

7

这是一个GCC扩展

x ?: y

是相同的

x ? x : y

除了 x 只会被评估一次以外。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接