本文将介绍C#中using用法及操作实践,估计有很多人还不了解C# using操作符,在命名空间中汇经常碰到。希望本文对大家有所帮助。

对C#中using用法和as操作符,平常在命名空间或许代码最初都会运用到。可是这么一个常见的C#中using用法,咱们了解不一定许多。

C#中using用法及操作实践(c#中using的用法)  C#中using用法 第1张

其实这两个操作符号是很重要也很有用的2个操作符号。下面咱们一同来看他们的运用方法。

1、using

依照MSDN的解说

using 句子界说一个规模,在此规模的结尾将处理目标。

C#中using用法举例:

  1. classTestUsing:IDisposable
  2. {
  3. publicvoidDispose()
  4. {
  5. Console.WriteLine("Dispose");
  6. }
  7. publicvoidMethod()
  8. {
  9. Console.WriteLine("Doamethod");
  10. }
  11. }

调用这个类:

  1. using(TestUsingtu=newTestUsing())
  2. {
  3. tu.Method();
  4. }

能够看到先后输出了Do a method和Dispose。

补白:实例化的目标有必要完成 System.IDisposable 接口

2、as

MSDN这么说:

as 运算符用于履行可兼容类型之间的转化。

as 运算符类似于类型转化,所不同的是,当转化失利时,as 运算符将发生空,而不是引发反常。在方式上,这种方式的表达式:

expression as type

等效于:

expression is type ? (type)expression : (type)null

仅仅 expression 只被核算一次。

请注意,as 运算符只履行引证转化和装箱转化。as 运算符无法履行其他转化,如用户界说的转化,这类转化应运用 cast 表达式来替代其履行。

举例:

  1. object[]arr=newobject[2];
  2. arr[0]=123;
  3. arr[1]="test";
  4. foreach(objectoinarr)
  5. {
  6. strings=(string)o;
  7. Console.WriteLine(s);
  8. }

这样的代码在转化类型失利的时分引发反常,代码修改成:

  1. object[]arr=newobject[2];
  2. arr[0]=123;
  3. arr[1]="test";
  4. for(inti=0;i{
  5. strings=arr[i]asstring;
  6. if(s!=null)Console.WriteLine(i+":"+s);
  7. }

能够看到输出了1:test,尽管arr[0]处转化失利可是没有引发反常而是返回了null

补白:as有必要和引证类型一同运用(int等值类型不能运用)

【修改引荐】

  1. C#类和结构简略介绍
  2. C# explicti和implicit详解
  3. C#编写ActiveX控件具体介绍
  4. C# StringBuilder和String浅析
  5. C#别号指示符学习经历
转载请说明出处
知优网 » C#中using用法及操作实践(c#中using的用法)

发表评论

您需要后才能发表评论