У меня есть класс, похожий на этот:
#include <vector>
#include "record.h"
#include "sortcalls.h"
template<
typename T,
template<typename , typename Allocator = std::allocator<T> > class Cont = std::vector>
class Sort: public SortCall {
Этот код работает, и я называю его так из других классов:
Comparator c; // comparison functor
Sort< Record, std::vector > s(c);
Теперь я хочу иметь возможность переключать контейнеры на другой контейнер, скажем, список.
Поэтому я подумал, что typedef будет аккуратным. Это должно быть что-то вроде
typedef std::vector<Record> container; // Default record container
template<
typename T,
template< typename, typename container > // ???
class Sort: public SortCall {