var t:MyClass = MyClass(o);有什么区别?和var t:MyClass = o as MyClass;

问题描述:

这种类型的表达式有什么区别?什么是更好的?var t:MyClass = MyClass(o);有什么区别?和var t:MyClass = o as MyClass;

// One way 
var t:MyClass = MyClass(o); 
// Another 
var t:MyClass = o as MyClass; 

哦,我以前知道的..

好了,第一个会,如果它不能转换为MyClass的失败,也就是说,你会拥有一个例外飞了起来你的筹码。

第二个将永远不会抛出,如果无法进行正确的转换,只会产生空值。

我想。