0
私は、int datatypeとchar *データ型をサポートするテンプレートを使用したコードを書いています。言わせてインスタンス化のためのC++テンプレートの仕様
struct node {
KeyType key;
struct node *next;
};
これはリンクされたリストノードでソートされているので、ノードを挿入するたびに比較する必要があります。このために私は
LT(a,b)..
GT(a,b)..
のような比較演算を定義していると私はnode<int>
を使用する場合、私は(私は定義を切り替えるマクロを使用して)node<char*> strncmp(a, b, SIZE)
のLT(a, b) as a<b
とでケースを定義するための1つのヘッダファイルcomparison.h
を、作成した ので、いずれかがあります私が最小限これに干渉する方法comparison.h
。テンプレートを使用する場合、データ型に固有の比較や特定の操作を使用するより良い方法は何でしょうか?
、あなたは全体のテンプレートを特殊化する必要があります。 –
文字列クラスを使うと簡単です。 char *を使用できる解決策はありますか? char *にはアロケータクラスがないので – peeyush