2011-09-30 4 views
7

可能な重複(Tの)タプルのポイント:私はちょうど実現(.NET 3の場合)ネット4に実装されるタプルを模倣しようと
いただきまし

What's the purpose of the Tuple(T1)/Singleton in .net?

Tuple(Of T)がありますか?これはかなり驚きでした!なぜ誰もが、これに代えて

return "Data"; 

のこの

Tuple<string> result = new Tuple<string>("Data"); 

を行うだろう

は作るのに十分な凝集イマイチ「緩く関連データのためにそのコンテナというタプルの全体のポイントではありません別のクラス "?何か不足していますか?

+0

、私はちょうど1つを逃し、見ていました。 –

答えて

4

ライブラリーには有限個のタプル数があります。したがって、8タプルを定義するには、 'rest'引き数が1タプルの7要素の種類を使用します。これは、ソフトウェア開発者のための多くの使用を持っていないかもしれない集合論からのキャリーオーバーである

http://msdn.microsoft.com/en-us/library/dd383325.aspx

+1

これは全く質問に答えません。 OPは、「なぜ1つのアイテムだけのタプルがあるのですか?」と質問しています。それは妥当な質問です。 –

+2

これはどのようにして質問への回答ですか? – jason

+1

この回答にはなぜ憎しみがありますか?リンクされたMSDNページには、8要素のタプルにTRestパラメータを指定する場合など、単一要素のタプルが*必須*の場合の明示的な例が示されています。 – Levi

1

を参照してください。

タプルは要素の順序付きリストです。 Nタプルにはn個の要素があり、nには1つの要素があり、これはシングルトンと呼ばれます。おそらく、コードの1タプルにはあま​​り役に立たないでしょうが、私はC#チームが完全性のためにそこに入れていると思います。そのことについて申し訳ありません

http://en.wikipedia.org/wiki/Tuple#Etymology

+1

だから、1つのアイテムのタプルが本質的に役に立たないということに私たちは皆同意しますか? –

+1

ソフトウェア開発に関しては、私はそれを使うことは考えられません。たぶん、数学的な集合をモデル化するプログラムを書いていたら?あなたはこの質問へのリンクをEric Lippertにメールする必要があります。明日は入力を明日提供します。 –

+0

ソフトウェア開発以外の分野で在庫BCLクラスの有用性を仮説していますか? –

関連する問題