Здравствуйте mic_o_stas, Вы писали:
MOS>Два вопросика по темплэйтам :
MOS>1. Как ( если это вообще возможно ) задать частичную специализацию?
К сожалению VC++ 6.0 не поддерживает partial specialization, не могу точно сказать за 7.0. Специально хотел почитать доку к нему, из beta'ы, но не поставив его не прочитаешь, формат поменяли, поэтому забил. Но вроде в 7.0 с этим лучше не стало. Кто читал, или использовал 7.0, поделитесь.
А синтаксис class partial specialization нужно смотреть в 14.5.4
template<class T1, class T2, int I> class A { };
template<class T, int I> class A<T, T*, I> { };
template<class T1, class T2, int I> class A<T1*, T2, I> { };
template<class T> class A<int, T*, 5> { };
template<class T1, class T2, int I> class A<T1, T2*, I> { };
Да, но VC++ 6.0 поддерживает полную специализацию, то есть возможна такая конструкция
template<> class A<int, long*, 5> { };