-3

usingc#の構文がわかりません。私は多くのコードスニペットを見てきました

みたいなコード。

using (StreamReader rdr = File.OpenText("file.txt"))
{
 //do stuff
}

ある種のループであるという構文の意味は何ですか?

4

4 に答える 4

1

構文は、リソースが確実に破棄されるようにするためのusingラッパーです( を実装するもので動作します) 。これは、それに続くブロックのスコープに特定のリソースを使用していることを示します。IDisposable

ステートメントは、このためのusing単なる構文糖衣です。

StreamReader rdr = File.OpenText("file.txt");
try
{
    //do stuff
}
finally
{
    rdr.Dispose();
}
于 2013-06-06T13:45:38.203 に答える
1

using ステートメントは、破棄またはクローズする必要があるオブジェクトを処理するための非常に便利な方法です。

このようなコードに置き換えます

StreamReader sr = new StreamReader(....)
try
{
     .... use the StreamReader
}
finally
{
    sr.Dispose();
}

ご覧のとおり、using intial 行内で宣言されたオブジェクトは常に finally ブロックに渡され、その dispose メソッドは例外の場合に ALSO が呼び出されます。

using ステートメントは、使用されるusing ディレクティブと混同しないでください。

名前空間での型の使用を許可して、その名前空間での型の使用を修飾する必要がないようにし、名前空間または型のエイリアスを作成します。これは、using エイリアス ディレクティブと呼ばれます。

using System.IO;  // Allows to type StreamReader instead of System.IO.StreamReader
using Project = PC.MyCompany.Project;  // Allows to type just Project.MyClass
于 2013-06-06T13:46:26.463 に答える
0

「using」を使用することで、オブジェクトが正しく破棄されるようにします。

次の質問には、いくつかの良い答えがあります。

C# での「使用」の使用

また、MSN で次の記事を読むこともできます。

MSDN C# の使用

于 2013-06-06T13:43:36.180 に答える