gpt4 book ai didi

c++ - istream_iterator 复制示例一直在等待输入

转载 作者:太空宇宙 更新时间:2023-11-04 12:31:24 25 4
gpt4 key购买 nike

我尝试实现“C++ 标准库”第 107 页中的流迭代器示例。我被困在这条线上:

copy (istream_iterator<string>(cin), istream_iterator<string>(), back_inserter(coll)); 

程序在这里继续从控制台读取数据,但不会传递到下一行。我该如何继续过去这一点?

最佳答案

From cppreference:

The default-constructed std::istream_iterator is known as the end-of-stream iterator. When a valid std::istream_iterator reaches the end of the underlying stream, it becomes equal to the end-of-stream iterator. Dereferencing or incrementing it further invokes undefined behavior

加粗

换句话说,std::istream_iterator<string>(std::cin)一直持续到 std::cin 的输入结束.这不会发生在行尾,而是发生在文件结尾。在控制台中,有specific commands to trigger the EOF。 :

In UNIX systems it is Ctrl+D, in Windows Ctrl+Z.

关于c++ - istream_iterator 复制示例一直在等待输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58497518/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com