问题标签 [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++ - istream_iterator,黑魔法?
我不明白为什么第二个参数 for_each 是一个空迭代器。有人可以向我解释一下吗?
c++ - 文件istream迭代器理解
我可能总体上对 istream_iterator 或迭代器缺乏一些了解,但是这两个代码片段不应该产生相同的结果吗?
输出:123
什么都不输出。
c++ - 使用 istream_iterator 时如何忽略最后的空白行
假设我有一个简单的二维点文本文件,如下所示:
我对 IO 使用了一个简单的结构:
我的原始代码是:
这很好用,但本着没有原始循环的精神,我想摆脱 for 循环。
这是我的新代码:
一切都复制得很好,但不幸的是,读取最后的空白行会导致设置失败位。
我能想到的解决这个问题的唯一方法有点难看。我可以:
point::operator>>()
在函数中放置一个 try-catch 子句- 签
vec.size()
入已经存在的 catch 子句。
有没有一种优雅的方式来忽略最后的空白行?
c++ - 将二进制文件读取到“unsigned char”向量时的模板参数是什么
这段代码有什么问题?
它给了我这个:
如果我将其更改为:
它抱怨这个:
c++ - 通过 istream_iterator 获取值后完成 cin 流
我有一个关于迭代器的简单问题,在下面的代码中,我使用了三种方法从迭代器的指针中获取值并将它们放入标准输出或向量中,但是即使按下回车键,cin 流也是连续的。这段代码中的错误应该是什么......在此先感谢
c++ - 为什么我不能在向量 Tor 中使用 istream_iterators?
我想做这个:
但是,编译器并没有将其识别为向量范围 ctor,而是认为我正在对函数进行原型设计。
有没有办法可以提示编译器发生了什么?
c++ - 使用 istream_iterator 读取字符串
我不明白通过迭代器读取字符串与直接读取字符串有何不同。为了举例说明,请考虑以下代码:
它的作用很明显,它str
使用读取istream_iterator
,并str1
通过传统方法读取。我有两个问题:
- 通过字符串迭代器结束读取的唯一方法是发送一个
CTRL+D
(Unix),它也会终止程序,因此第二部分不会执行。有没有办法解决? - 使用迭代器读取时,输入空格(空格、\t、\n)无关紧要,迭代器会继续读取。为什么这种行为与直接通过阅读时的行为不同
cin >>
?
c++ - 将多个 C 字符串的缓冲区转换为字符串向量
Win32 API 的 GetLogicalDriveStrings 返回一个 C 字符串缓冲区,看起来像:
"C:\<NULL>D:\<NULL>E:\<NULL><NULL>"
. 我想返回一个字符串向量并考虑使用 istream 迭代器:
这怎么总是返回一个大小为 1 的向量。我想 istream_iterator 认为当他找到一个空字节时它的工作已经完成。有没有办法做我想做的事?
c++ - 带或不带 istreambuf_iterator 的 ifstream 有什么区别?
我需要读取一个包含标题和数据的二进制文件(一次性)。用 C++ 读取文件有不同的方法,我想知道哪种方法最快、更可靠。我也不知道是否reintrerpret_cast
是将原始数据转换为结构的最佳方法。
编辑:标题结构没有任何功能,只有数据。
这是没有 istreambuf_iterator 的 ifstream
这是带有 istreambuf_iterator 的 ifstream
在网上也找到了这个
c++ - 在 istream 上使用 regex_iterator
我希望能够解决这样的问题:Getting std :: ifstream to handle LF, CR, and CRLF? istream
需要用复杂的分隔符标记的地方;这样标记的唯一方法istream
是:
- 一次读
istream
一个字符 - 收集人物
- 当分隔符被击中时,将集合作为标记返回
正则表达式非常擅长用复杂的分隔符标记字符串:
但是我不能在 aregex_iterator
上使用 a istream
:( 我的解决方案是先啜饮istream
然后再将其regex_iterator
碾过,但啜饮步骤似乎是多余的。
是否在某处有一个邪恶的组合istream_iterator
,regex_iterator
或者如果我想要它,我必须自己写吗?