C++相談室 part40
■ このスレッドは過去ログ倉庫に格納されています
0830デフォルトの名無しさん
2005/06/19(日) 11:25:08typedef typename if_<is_integral<indexT>, hash<indexT, valueT>, tree<indexT, valueT> >::type containerT;
でもメソッドの実装ごと切り替えたいなら実装用のクラスを作ってテンプレート引数で切り替えるというのも
有りかと。まー >828 と同じだけど
template<typename valueT, typename indexT>
class MyTable : public MyTableImp<valueT, indexT, is_integral<indexT>::value> {};
template<typename valueT, typename indexT, bool b>
class MyTableImp {
// ハッシュテーブル実装
};
template<typename valueT, typename indexT>
class MyTableImp<valueT, indexT, false> {
// 二分木実装
};
■ このスレッドは過去ログ倉庫に格納されています