ps 这里是乌克兰语的评论
// файлові потоки для заданого файла і результатів
ifstream fin("OldmanAndSea.txt"); // заданий
ofstream fout("result.txt"); // отриманий
// доступ до фалів буде через ітератори
istream_iterator <string> begin(fin), end;
ostream_iterator <string> out(fout,"\n");
// список для накопичення слів
list <string> L;
// всю роботу виконає алгоритм, ітератор потоку
// читання, і оператор введення з потоку
// саме оператор введення "вміє" виокремлювати
// групи літер, відокремлених пропусками
// нові слова дописуємо в кінець списку
copy(begin, end, back_inserter(L));
// вилучення повторних входжень слів - двоетапне
L.sort();
L.unique();
// тепер можна зберегти отриманий результат
*out++ = "----------------------------- list after sort & unique";
// всю роботу знову виконує алгоритм
copy(L.begin(),L.end(),out);
// загальна кількість знайдених слів
cout << "There are " << L.size() << " words\n";
*out++
- 将迭代器移动到下一个位置,"----------------------------- list after sort & unique"
- 写给她。我已经明白了:out是输出流的迭代器,*out=表示输出到流,out++——输出到迭代器构造函数中指定的分隔符字符串的流。