2014-04-25 45 views
1

我找不到任何地方在这个动作代码中的??运算符。这是什么意思?它如何被重写?Actionscript双问号运算符

package { 
    import flash.utils.*; 
    public interface _hur { 
     "com.hurlant.crypto.symmetric:ICipher"?? function _foo():uint;  
    } 
} 
+1

这不是语言的官方运营商:http://help.adobe.com/en_US/FlashPlatform/ reference/actionscript/3/operators.html - 我还没有尝试过,但我会想要引发编译器错误。 – BadFeelingAboutThis

+1

LDMediaServices是对的 - 它会抛出一个错误,至少在普通的Flash播放器中是这样。从来没有听说过。很想知道如果它可以用于和什么:) –

+0

这看起来像一个文本翻译错误。如果从ASCII剪切并粘贴到UTF-8(或其他),某些字符无法正确翻译。 如果不是这样,那么有人错误地输入了内联'if'语句。 – iND

回答

0

它在C#中用于获取第一个值不为空。

在C#:return ((foo ?? bar) ?? "Both null.");

在ActionScript 3:

if (foo) { 
return foo; 
} else if (bar) { 
return bar; 
} else { 
return "Both null."; 
} 

Source/Use in C#