varキーワードの使用頻度について

投稿者: Anonymous

 今まで、ある程度変数の型がわかりにくい場合にはvarキーワードを使用せずに
型を明示して宣言していました。

しかし最近は全てのローカルスコープでvarを使用しています。

理由は以下です。

  • 複数の変数宣言がある場合、可読性が高くなる場合がある。

    var i = 10;
    var s = "foo";
    var c = 'c';
    
  • C#には右辺で型を明示できる場合が多い

    var a = new Foo();
    var b = default(Foo);
    
  • 振る舞いがわかっていれば、具体的に型がわかっていなくとも問題ない場合がある

    var a = GetFoo();
    for (var i = 0; i < 10; ++i) {
      a += i;
    }
    Console.WriteLine(a);
    

質問ですが、一般ではvarの乱用は避けるべきでしょうか?

解決

C# のコーディング規則 (C# プログラミング ガイド)

暗黙的に型指定されるローカル変数

  • 変数の型が代入の右側から明らかである場合、または厳密な型が重要でない場合は、ローカル変数の暗黙の型指定を使用します。
  • 代入の右側から型が明らかではない場合は、var を使用しないでください。
  • 変数の型を指定するときに変数名に頼らないでください。 変数名が正しくない場合があります。
  • dynamic の代わりに var を使用しないようにしてください。

ローカルスコープ内で多用する分には全く問題ないと思われます。ローカルスコープが巨大である場合は別の問題があるので、それは除きます。

回答者: Anonymous

Leave a Reply

Your email address will not be published.