as运算符

可以使用 as 运算符执行转换的某些类型在兼容之间的引用类型或 可以为 null 的类型。 下面的代码提供了一个示例。

请注意 as 运算符执行只引用转换、nullable 转换和装箱转换。 as 运算符不能执行其他转换,如用户定义的转换,应是通过使用转换的表达式。

 

来自 <https://msdn.microsoft.com/zh-cn/library/cscsdfbt.aspx>

 

C#

 1     
 2     class csrefKeywordsOperators
 3     {
 4         class Base
 5         {
 6             public override string  ToString()
 7             {
 8                       return "Base";
 9             }
10         }
11         class Derived : Base 
12         { }
13   class Program
14         {
15             static void Main()
16             {
17 Derived d = new Derived();
18 Base b = d as Base;
19                 if (b != null)
20                 {
21                     Console.WriteLine(b.ToString());
22                 }
23 }
24         }
25     }

 

备注

 

as 运算符类似于强制转换操作。 但是,因此,如果转换是不可能的,as 返回 null 而不引发异常。

 

来自 <https://msdn.microsoft.com/zh-cn/library/cscsdfbt.aspx>

 

posted @ 2018-01-20 21:39  奔跑的蒲公英  阅读(221)  评论(0编辑  收藏  举报