c# 中 as 用法 :
m3 = m1 as MyClass1;
这句代码等价于:
MyClass1 m3;
if (m1 is MyClass1) {
m3 = (MyClass1)m1;
} else {
m3 = null;
}
意思是判断实例对象是否属于某个类
完整代码:
class MyBase { }
class MyClass1 : MyBase { }
class MyClass2 : MyBase { }
class Program {
static void Main(string[] args) {
MyBase m1 = new MyClass1();
MyClass1 m3;
if (m1 is MyClass1) {
m3 = (MyClass1)m1;
} else {
m3 = null;
}
m3 = m1 as MyClass1;
Console.WriteLine("ok");
Console.ReadKey();
}
}
网友评论