Java の経験は豊富ですが、C++ は初めてです。
メソッドが必要です。簡単な例は set union で、set<int>
と of のパラメーターで動作しますset<bool>
が、他の型は動作しません。
現時点ではメソッド名をオーバーロードしていますが、メソッド本体で同様のコードを多数複製しています。
より良い方法はありますか?ありがとう!
Java の経験は豊富ですが、C++ は初めてです。
メソッドが必要です。簡単な例は set union で、set<int>
と of のパラメーターで動作しますset<bool>
が、他の型は動作しません。
現時点ではメソッド名をオーバーロードしていますが、メソッド本体で同様のコードを多数複製しています。
より良い方法はありますか?ありがとう!
Function Templateを書くことができます。
ただし、引数のタイプに関係なく、同様の操作を実行している場合は、これを行うことができます。データ型ごとに異なる操作を実行している場合は、基本的に問題に戻るテンプレート関数を特殊化する必要があります。
template <typename T>
void func(const std::set<T> ¶m)
{
// your staff
}
//....
int main()
{
std::set<int> int_set;
std::set<bool> bool_set;
func(int_set);
func(bool_set);
}