У меня есть этот фрагмент кода. Объект istream_iterator только определен и не используется, поэтому я ожидаю, что он ничего не сделает и приложение завершится немедленно. Но когда я запускаю приложение, оно не завершается, пока я не внесу какие-то данные. Почему?
Я компилирую его на ArchLinux с помощью: gcc 4.7.1, с помощью команды: g ++ -std = c ++ 11 filename.cpp
#include <iterator>
#include <iostream>
using namespace std;
int main(int argc, char *argv[])
{
istream_iterator<char> input(cin);
return 0;
}