这可以缩短吗? font = font? font:defaultFont;

时间:2014-11-18 11:24:50

标签: objective-c c

你知道更好的写作方式吗

font = font ? font : defaultFont;

我知道的其他所有事情都是:

if(!font) {
    font = defaultFont
}

我知道这是一个小工具问题,但谁知道会发生什么。

2 个答案:

答案 0 :(得分:3)

从语法上讲,您可以使用gcc extension缩短它:

font = font ?: defaultFont;

答案 1 :(得分:2)

这样使用了一种快捷语法?:

font = font ?: defaultFont;

这是

的简写
font = font ? font : defaultFont;

这是来自GCC扩展程序,默认情况下也适用于clang,所以应该适合你。