0

私はこのようなメソッドを宣言するこの割り当てを取得しました...

public List<Contact> GetLastContacts([int count = 20])  
{  
    return this._entities.ContactsSet.ToList();  
}

私が理解しておらず、情報を見つけることができないのは[int count = 20]、パラメータとしてです...

誰かがそれらが何を意味するのか説明を受けましたか?

/よろしくお願いします!

4

3 に答える 3

6

int count = 20パラメータ内で、パラメータのデフォルト値として宣言します。これにより、呼び出し元のパラメーターはオプションになります(つまり、呼び出し元のパラメーターはオプションに見えます)。

したがって、それを呼び出すメソッドでは、次のことができます。

var contacts = GetLastContacts(); // Will compile to GetLastContacts(20)

または、値を使用してデフォルトをオーバーライドするには、次のようにします。

var contacts = GetLastContacts(35); 

MSDNの名前付き引数とオプションの引数を参照してください。

于 2012-11-23T10:15:43.223 に答える
3

public List<Contact> GetLastContacts(int count = 20)(no [])は、メソッドに。というintパラメーターがあることを意味しcountますが、パラメーターはオプションであり、呼び出し元がそれを省略してGetLastContacts()、のデフォルト値を呼び出す場合は、countです20

角かっこはC#コードでは正しくありませんが、パラメーターがオプションであることを示すものとして、ドキュメントやツールチップなどに表示される場合があります。

于 2012-11-23T10:16:57.843 に答える
0

これは「オプションのパラメータ」を書く2つの方法の組み合わせかもしれないと思います。C#では、次のような「代入」でデフォルトの引数値を指定すると、オプションの引数を使用してメソッドを定義できます。

public List<Contact> GetLastContacts(int count = 20)

その後、どちらかを呼び出すことができます

GetLastContacts(count)

カウントを指定する、または

GetLastContacts()

これはデフォルト値の20を使用します。

コードでの使用法は[ ]、オプションのパラメーターを記述するPOSIX標準化された方法である可能性がありますが、C#言語やそのドキュメント標準ではサポートされていないため、そこに存在する理由はまったくありません。

于 2012-11-23T10:19:23.447 に答える