2009-07-22 8 views

答えて

3

いいえ、ローカル変数にはvarしか使用できません。基本的には、あなたは繰り返しに悩まされています、私は恐れています。

エリックリッペルトは素晴らしいblog post on thisです。注意すべき


興味深いポイント:Javaはあなたがにを割り当てるしようとしているものに基づいて、他の方法でラウンド暗黙の型と型推論を実行します。これは合法であることを意味します:

// Note: This is Java, not C#! 
class CollectionHelpers 
{ 
    public static <T> List<T> newList() 
    { 
     return new ArrayList<T>(); 
    } 
} 

// In another class (doesn't have to be static) 
static List<String> names = CollectionHelpers.newList(); 
+0

ます。http://blogs.msdn。 com/ericlippert/archive/2009/01/26/why-no-var-on-fields.aspx –

+0

私の無回答を削除しました。私を修正してくれてありがとう。 –

2

確かにVB.NETを使用してください。 ;それは質問とは直接関係ありませんけど)

myDict as New Dictionary(Of String, Integer)() 
-2

、一部の人々は、コレクションの初期化を使用してC#3でこれを行うことができます興味があるかもしれない:

var myDict = new Dictionary<string, int>() 
{ 
     { "one", 1 }, 
     { "two", 2 }, 
     { "three", 3} 
}; 
+0

これは、クラスのメンバーには、opで尋ねられたようにはできません。 –

+0

私はちょうどそれが関係なく、いくつかの人々のために有用かもしれないと思った。ホーハム。 –

+0

@ダン、ここでの問題はオブジェクト初期化子リストではありません。その機能はかなり素晴らしいです。 :)問題は、クラスメンバーに 'var'キーワードを使うことができないということです。辞書の型に置き換えれば、あなたの投稿は面白くて正確になります。 :) –

関連する問題