简写三元运算符是否进行多次计算?

时间:2012-07-26 06:48:57

标签: ternary-operator conditional-operator

三元运算符有简写版本,即

var = exp ?: exp2

我知道它适用于PHP。其他语言也可能已经选择了它。 C#具有类似的功能(针对此问题的上下文) - ??

当条件通过时,表达式是再次评估,还是结果存储在某个地方?

1 个答案:

答案 0 :(得分:0)

http://msdn.microsoft.com/en-us/library/ms173224.aspx

The ?? operator is called the null-coalescing operator and is used to define a default value for nullable value types or reference types. It returns the left-hand operand if the operand is not null; otherwise it returns the right operand.

存储,不计算两次。