Расстояние между istream_iterators
Я пытаюсь посчитать количество элементов, прочитанныхstd::cin
используяstd::distance
для аргумента конструктора вектора заранее, вот так:
// Gives correct amount, but now can't use to put into vector
int size = std::distance(std::istream_iterator(std::cin),
std::istream_iterator());
std::vector v(size);
// Already read from stream
std::copy(...);
Очевидно, я могу завершить это в один шаг сstd::copy
, но это потребует установки размера заранее. Мой вопрос неT о векторах, хотя, этоо получении размера произвольного ввода с помощьюstd::istream_iterator
не влияя на поток. Есть идеи?"