问题标签 [istream-iterator]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - CGAL 的 istream_iterator
不好意思问,不过有段时间没用CGAL了。我试图让CGAL 的Convex_hull_2/convex_hull_yz.cpp示例从文件中获取输入,而不是通过 cmd 从重定向中获取输入,例如./convex_hull_yz < convex_hull_yz.cin
. 这是代码:
这是参考。所以很明显我的尝试是行不通的:
相关问题:是否有可以逐行迭代文件的 C++ 迭代器?,我理解,但我无法与 CGAL 联系。请问有什么想法吗?
c++ - 左值 istringstream istream_iterator 需要吗?
在 Visual Studio 中给定 astring foo
我可以通过执行以下操作将单词分解为 a vector
:
但这不会在 gcc 5.1 中编译。我得到错误:
从类型的右值对类型
std::istream_iterator<std::basic_string<char> >::istream_type&
{aka }的非常量引用的无效初始化std::basic_istream<char>&
std::basic_istream<char>
现在我知道 gcc 有一个由我们自己的Jonathan Wakely修复的错误。这是该错误的扩展还是我在istringstream
这里使用右值是非法的?
c++ - 为什么所有列表都被填充
所以给出定义:
我写了一个提取操作符Tache
:
但是,当我尝试将此提取运算符与成员一起使用时,istream_iterator
该precedentTask
成员似乎会渗入下一个元素。例如,给定:
我正进入(状态:
A 3
B 4 A
C 2 AA
E 5 AAA
G 3 AAAA
J 8 AAAABH
H 7 AAAABHCEG
I 6 AAAABHCEGG
F 5 AAAABHCEGGH
而不是我的预期:
A 3
B 4 A
C 2 A
E 5 A
G 3 A
J 8 BH
H 7 CEG
I 6 G
F 5 H
我在滥用sregex_token_iterator
吗?
c++ - istream_iterator 不进行零初始化
这是一个最小的、完整的、可验证的示例我知道这不是共产主义。无论如何,给定结构:
我可以执行以下操作:
然而,这给了我结果:
-1215720516 1
2 1
2 3
4 3
4 5
6 5
6 7
8 7
8 9
0 9
要零初始化,Foo
我可以编写代码:
这给了我我的预期结果:
0 1
2 0
0 3
4 0
0 5
6 0
0 7
8 0
0 9
0 0
我知道拥有一个不完全覆盖变量的提取运算符是粗略的。这最初源于我在此处的回答和此处的问题,在我看来,我更自然地期望在读取之间对变量进行零初始化。在任何情况下,是否可以使用这样的变量在读取之间初始化为零,或者我必须使用-loop?istream_iterator
for
c++ - 如何在不需要重置流的情况下使用 istream_iterator?
我已经写了这个答案:httpsistream_iterator<int>
: //stackoverflow.com/a/40181583/2642059 在其包含循环读入标头之后,它使用一个来读入整数。所以文本的格式如下:
HR0
012312010
001230202HR1
012031020
012320102
012323222
012321010HR2
321020202
我在:istringstream input
。我希望能够使用 a 读取整数istream_iterator<int>(input)
,但这会一直读取,直到它找到一个非int
,然后将坏位设置为input
。
有没有办法可以避免这种情况,或者我每次istream_iterator<int>
阅读结束时都必须清除坏位?
c++ - 设置任意结束 istream_iterator
我是否可以设置istream_iterator
默认构造的结尾以外的结尾?
一个用例是vector<int>
用 的前 13 个元素初始化 a istream_iterator<int>
:vector<int>{ istream_iterator<int>(cin), x)
wherex
是一个距离 13 个元素的迭代器istream_iterator<int>(cin)
。
c++ - 在 C++ 中,是否可以实现一个迭代器接口,其中推进使“当前”元素无效?
我正在设计一个 C++ 接口,它允许用户迭代从文件解码的对象。这个解码过程有点慢。
我正在为此考虑一个迭代器接口,但我想避免任何不必要的复制,所以我正在考虑(用户方面):
object
在前面的用法示例中是对迭代器实例内部对象的引用。
这是错的吗?您会在这里建议哪些其他惯用接口?
我想到了一个流接口(想想std::istream
),但是 AFAIK,读取数据的方法也返回副本(它们提取字符)。
c++ - istream_iterator 从流中消耗太多
我从标准输入得到以下输入:
第一行代表队列的数量(我们称之为 value n
)。然后,对于每个队列,在第一行有一个l
表示队列长度的值,然后是实际队列。
我正在尝试使用istream_iterator
如下方式将队列放入向量中:
此代码产生以下输出:
如您所见,第一个队列已正确读取。但第二个l
应该是5
,不是2
。
发生了5
什么?它被迭代器消耗了吗?我在哪里犯了错误?
c++ - 保存 istream 位置供以后使用
我在下面编写了应该保存 istream 迭代器的代码。我想要的是保留迭代器以便以后复制到给定位置的字符串。这工作正常,直到我将流重置为开头。输出是“teet”之二我想要“tees”。有没有办法使迭代器独立于流位置?
c++ - std::istream_iterator成员变量在递增时失败
我有一个程序如下:
在执行这个程序时,它是核心转储。我知道它只有在执行语句时才会发生 ++streamHandle;
因此,我在不使用以下类的情况下实现了相同的功能,并且效果很好。
您能否帮我确定在创建类并std::istream_iterator<double>
从类中迭代时出了什么问题。