- 637 名前:デフォルトの名無しさん [2006/05/24(水) 23:01:13 ]
- >>629 >>634
operatorやswapをこんな感じにしておけばKoenig lookupは要らなかった。 lessを提供すればless_equalも勝手に実装してくれるとか、 そういう仕組みを作ることもできる。 namespace std { ... namespace hooks { template <class T1, class T2> struct plus_traits; template <class T> struct plus_traits<std::complex<T>, std::complex<T> > { typedef std::complex<T> result_type; static std::complex<T> plus(const std::complex<T> &a1, const std::complex<T> &a2) { ... } } } } template <class T1, class T2> std::hooks::plus_traits<T1, T2>::result_type operator+(const T1 &a1, const T2 &a2) { return std::hooks::plus_traits<T1, T2>::plus(a1, a2); }
|

|