0

ここにある Felice Pollano のデカルト積ヘルパー クラスを使用してソリューションを実装しようとしています

クラスを呼び出す彼の例では、次のようなリテラル文字列配列を使用しています。

var cross = new CartesianProduct<string>(
           new string[] { "JUICY", "SWEET" }
           , new string[] { "GREEN", "YELLOW" }
           , new string[] { "APPLE", "BANANA", "MANGO" });

これは期待どおりに機能します。

私の実装では、XML から値を取得する必要があるため、より動的な処理を行う必要があります。私はこれを行う方法に夢中になっています。たとえば、これは機能しません。

object[] array = new object[] {new string[] { "JUICY", "SWEET" } , 
new string[] { "GREEN", "YELLOW" }, 
new string[] { "APPLE", "BANANA", "MANGO" } };

var cross = new CartesianProduct<object>(array);

コンストラクターは入力配列を単一の として取得しているため、param問題が発生しています。

このクラスを別の方法で呼び出して機能させるか、ヘルパークラスを更新して必要なことをサポートする方法について何か提案はありますか?

4

1 に答える 1

2

コンストラクターは、オブジェクトとして持つstring[][]ではなく、を受け入れます。object[]string[]

ただし、配列の作成方法はわずかに変更されています。

string[][] array = new string[][] 
{
    new string[] { "JUICY", "SWEET" }, 
    new string[] { "GREEN", "YELLOW" }, 
    new string[] { "APPLE", "BANANA", "MANGO" } 
};
于 2013-05-30T21:07:01.207 に答える