try/catch/finallyで変数を宣言して使用するためのベストプラクティス/推奨事項は何ですか?tryブロック内またはtryブロック外に変数を宣言する必要はありますか?
私たちはtryブロックの外側に変数を宣言し、最後に処分する必要がありますか? tryブロック内で宣言して自動的に破棄しますか?これは、変数の型があるに依存
string Name = String.Empty;
try
{
//do work
}
catch
{
//safely access s
Console.WriteLine(Name);
}
OR
string Name;
try
{
//do work
}
catch
{
if (!String.IsNullOrEmpty(Name))
{
//safely access s
Console.WriteLine(Name);
}
}
それはどのような変数とどのような仕事に完全に依存し... – TheLethalCoder
は、なぜあなたは変数が '...試すcatch'ブロックによって自動的に配置されることを期待します? –
2番目の例は、 'Name'がcatchブロックで読み込まれる前に確実に割り当てられていないため、コンパイルされません。それは別として、可能な限り小さな変数を変数に与えるべきです。 – Lee