Общий вектор векторов в C ++

Есть ли хороший способ в C ++ реализовать (или подделать) тип для общего вектора векторов?

Не обращайте внимания на то, когда вектор векторов является хорошей идеей (если нет чего-то эквивалентного, что всегда лучше). Предположим, что он точно моделирует проблему, и что матрица не точно моделирует проблему. Предположим также, что шаблонным функциям, принимающим эти вещи в качестве параметров, необходимо манипулировать структурой (например, вызывая push_back), поэтому они не могут просто взять универсальный тип, поддерживающий[][].

Что я хочу сделать, это:

template<typename T>
typedef vector< vector<T> > vecvec;

vecvec<int> intSequences;
vecvec<string> stringSequences;

но, конечно, это невозможно, так как typedef не может быть шаблонным.

#define vecvec(T) vector< vector<T> >

близок, и сохранит дублирование типа во всех шаблонных функциях, которые работают на vecvecs, но не будут популярны у большинства программистов на C ++.

Ответы на вопрос(4)

Ваш ответ на вопрос