C#语言中为什么在如下的语句中需要使用using?

C#语言中为什么在如下的语句中需要使用using?
string path1 = "E:/TEMP/C#/123.txt";
using (StreamReader sr = new StreamReader(path1))
{
String line;
// Read and display lines from the file until the end of
// the file is reached.
while ((line = sr.ReadLine()) = null)
{
Console.WriteLine(line);
textBox1.Text = line;
}
Sr.Close();//注意这里close必须在using程序段之内;
}
意外的桃花 1年前 已收到1个回答 举报

又见黄昏晓 幼苗

共回答了17个问题采纳率:94.1% 举报

using 语句定义一个范围,在此范围的末尾将处理对象.
using (expression | type identifier = initializer) statement
其中:
expression
希望在退出 using 语句时调用 Dispose 的表达式.
type
identifier 的类型.
identifier
type 类型的名称或标识符.定义一个以上 type 类型的 identifier 是可以的.在每一个 identifier = initializer 的前边都有一个逗号.
initializer
创建对象的表达式.
statement
嵌入的语句或要执行的语句.
备注
在 using 语句中创建一个实例,确保退出 using 语句时在对象上调用 Dispose.当到达 using 语句的末尾,或者如果在语句结束之前引发异常并且控制离开语句块,都可以退出 using 语句.
实例化的对象必须实现 System.IDisposable 接口.
示例
// cs_using_statement.cs
// compile with /reference:System.Drawing.dll
using System.Drawing;
class a
{
public static void Main()
{
using (Font MyFont = new Font("Arial",10.0f),MyFont2 = new Font("Arial",10.0f))
{
// use MyFont and MyFont2
} // compiler will call Dispose on MyFont and MyFont2
Font MyFont3 = new Font("Arial",10.0f);
using (MyFont3)
{
// use MyFont3
} // compiler will call Dispose on MyFont3
}
}

1年前

5
可能相似的问题
Copyright © 2024 YULUCN.COM - 雨露学习互助 - 16 q. 0.052 s. - webmaster@yulucn.com