template<class Iterator> class Paginator;
Пользоваться им будут типо вот так:
Paginator<vector<int>::iterator> paginate_v(v.begin(), v.end(), 6);
ostringstream os;
for (const auto& page : paginate_v)
for (int x : page) {
os << x << ' ';
То есть шаблонный параметр это итератор. Я храню все это в:
vector<vector<Iterator> > pages;
Все бы хорошо, но они хотят чтобы при проходе for'ом они внутри вектора получали сразу элементы, а не итераторы. Откуда я возьму тип элементов? Какие-то decltype сюда не особо засунешь тем более в объявлении, а не определении.
Есть идеи?
iterator_traits<Iterator>::value_type
Обсуждают сегодня