1

Action私は、とFuncdelegates の両方が、2 から 8のparamsの特定の構造を持っていることに気付きました:

ここに画像の説明を入力 ここに画像の説明を入力

なぜ彼らは - 明示的にカウントされた - パラメータタイプを開いたのですか? (もしそうなら、なぜ 8 なのですか?)

10個のパラメータがある場合はどうなりますか?

編集

8 の伝統を打ち破り、タプルは 7 を持っています ... ??

ここに画像の説明を入力

編集2

SystemCore.Dll に - 1..16 params ver があります。

4

1 に答える 1

3

> なぜ彼らは - 明示的にカウントされた - パラメーターの型を開いたのですか?

言語は可変量の Type パラメーターをサポートしていないためです。

> (もしそうなら、なぜ 8 なのですか?)

通常は 4 で十分なはずだからです。

> 10個のパラメータがある場合はどうなりますか?

次に、独自のコードに次を追加する必要があります。

 delegate void Action<T1, T2, ... , T10> (T1 arg1, T2 arg2, ..., T10 arg10);
于 2012-05-10T11:54:13.580 に答える