c# using 用法

using+命令空间

导入命名空间中的所有类型

如:using System.Text;

using别名

using+别名=包括详细命名空间信息的具体类型,这种做法有个好处就是当同一个cs引用了两个不同的命名空间,但两个命名空间都包括了一个相同名字的类型的时候。当需要用到这个类型的时候,就每个地方都要用详细命名空间的办法来区分这些相同名字的类型。而用别名的方法会更简洁,用到哪个类就给哪个类做别名声明就可以了。注意:并不是说两个名字重复,给其中一个用了别名,另外一个就不需要用别名了,如果两个都要使用,则两个都需要用using来定义别名的

using s = System.Text;

using语句

是用来简化资源释放的,在一定的范围内有效,出了这个范围时,自动调用IDisposable释放掉,当然并不是所有的类都适用,只有实现了IDisposable接口的类才可以使用。提供了机制保证Dispose方法被调用,无论using语句块顺利执行结束,还是抛出了一个异常。

Disposable:可任意使用的、一次性的、用完即丢弃的。该接口的定义是,提供了一种释放非托管资源的机制。

using (var reader = new StringReader(manyLines))

{

string? item;

do

{

item = reader.ReadLine();

Console.WriteLine(item);

} while (item != null);

}

除了using可以达到这个目的意外,try finally也是可以的。如

var reader = new StringReader(manyLines);

try

{

string? item;

do

{

item = reader.ReadLine();

Console.WriteLine(item);

} while (item != null);

}

finally

{

reader?.Dispose();

}

}

相关推荐
老骥伏枥~34 分钟前
【C# 入门】程序结构与 Main 方法
开发语言·c#
全栈师1 小时前
java和C#的基本语法区别
java·开发语言·c#
钰fly1 小时前
联合编程(加载单个工具,ini读写,图片读写,setting存储)
c#
FuckPatience3 小时前
C# 对象初始化器对属性赋值vs构造函数里对属性赋值
c#
m0_748233174 小时前
C语言vsC#:核心差异全解析
c语言·开发语言·c#
MyBFuture5 小时前
C# 关于联合编程基础
开发语言·c#·visual studio·vision pro
Sunsets_Red5 小时前
单调队列优化dp
c语言·c++·算法·c#·信息学竞赛
故事不长丨5 小时前
《C#委托与事件深度解析:区别、联系与实战应用》
开发语言·c#·委托·事件·event
程序猿小玉兒6 小时前
解决大文件上传失败问题
c#·.net
code_li6 小时前
语音播报功能 C# net4.5代码
c#·语音播报