質問: **クローズされました**。この質問は 主観性の高い質問 です。この質問では現在、回答を受け付けていません。 --- **この質問を改善したいですか?** 質問を更新、この投稿を編集して事実と引用で回答されるようにしてください。 5年前 にクローズされました。 StyleCopのコードクリーニング設定でvarキーワード使用のオプションがありますが、現在社内でこの設定をしています。 !画像の説明をここに入力 私が最初に設定したのではないので、なぜ、常にVarを使用するかは分かりません。知っているのはvarを使用する際にコードが読みやすいこと。ネットで検索をしたら、stackoverflow本家にちょっと似たような質問を見つけました 結構面白い話題なので、varキーワード常に使用すべきかどうか、国内の開発者の意見を聞きたいです。
回答: 本家でロックされている質問を持ち込むのはどうかと思いますが、var常用者として型推論を使わないケースを挙げておきます。 * ジェネリックでない`IEnumerable`の列挙時 例) Windows Forms ``` foreach(Control c in Controls) // 型推論不能だがキャストは可能 ``` * 後でアップキャストした値を再設定する場合 例) Entity Frameworkの検索時 ``` IQueryable q = new SomeDbContext().TableHoge; // DbSet if(fuga != null) q = q.Where(_ => _.Fuga == fuga); // IQueryable ``` * `T`等の型名が短い場合