есть этот код:
template<typename T, template<typename, typename> class OuterCont, template<typename, typename> class InnerCont, class Alloc=std::allocator<T>>
class ContProxy {
OuterCont<T, InnerCont<T, Alloc>> _container;
};
typedef ContProxy<int, std::vector, std::list> IntCont;
Но в некоторых случаях нужно использовать T*
вместо std::list<T>
как InnerCont
, например:
template<typename T, template<typename, typename> class OuterCont, T*, class Alloc=std::allocator<T>>
class ContProxy {
OuterCont<T, T*> _container;
};
Можно ли для этого случая использовать частичную специализацию параметра 'шаблон шаблона'?
Или как его заархивировать с минимумом головной боли..