2012-01-26 6 views
0

私は、ジェネリックプログラミングのテクニックを使って大きなプログラムを開発しました。これにはたくさんのクラステンプレートが含まれています。 GUIオプションに基づいて実行時にこれらのパラメータを選択することをシミュレートする方法はありますか?汎用プログラミングをGUIで使用するには?

は私が

template <typename A, typename B, typename C> 
class MyClass {}; 

を持っていると私はラジオボタンの3つのグループからA、B、およびCを選択してみたいと思います。組み合わせ式の長いswitch文を作成することなく、ユーザがGUIで選択するタイプを使用してMyClassをインスタンス化する方法はありますか?

+0

残念ながら、絶対にすべてのテンプレートパラメータはコンパイル時に知られていなければなりません。 –

+0

テンプレートクラスは、コンパイル時にインスタンス化されます。したがって、可能なすべての組み合わせをインスタンス化し、ユーザーの入力に基づいて適切な組み合わせを選択するだけです。 – lapk

+0

これらのコメントと回答ではないのはなぜですか? – Alan

答えて

0

私はここでは専門家ではありませんが、他の人がこれが不可能であるとコメントしたように、私は信じています。

はおそらくです。テンプレートファイルのパラメータを変更したGUIアプリケーションを作成し、このプロジェクトのコンパイルと実行を開始しました。異なるコンパイルターゲット/環境で私たちのコードを単体テストするために、しばしば同様のことを行います。

+0

ユーザーがアプリケーションを起動するたびにソースコードを再コンパイルするのは面倒です。 –

+0

@SethCarnegie - ああ、もし彼がこれを悪意のあるアイデアだとエンドユーザがやることを意図しているのであれば。私は、依存性注入の行に沿って、さまざまな可能性をテストしたい単体テストの問題として、より多くを読んでいます。これはユーザーが直面している場合は、ええ、私が言ったことをしないでください;)。 – DougW

+0

まあまあ、それはエンドユーザー向けです。 @SethCarnegie - 一般的なプログラミングについて怒りったり怒ったりしますが、誰かがGUIを書こうと思っている可能性は考えていませんか?それはちょうど私の大きな邪魔になっているようです。 –