gpt4 book ai didi

c++ - 此 getline 测试在 MSVC 2012 中有效,但在 MSVC 2015 中出错,如何修复?

转载 作者:行者123 更新时间:2023-11-30 03:41:43 25 4
gpt4 key购买 nike

while (getline(stream, thisword, ' ') != 0) {...

我可以在 MSVC 2012 下编译这一行。通过传递一个“SPC”字符作为字符串分隔符,它应该测试输入流中是否还有要处理的字符串。它粗略地检查指针是否为 NULL。

但是,它在 MSVC 2015 中不起作用,也无法编译。现在是编译错误,而不是警告。

如何更新片段以便检查是否已到达输入流的末尾?

最佳答案

getline 返回对调用它的 basic_istream 对象的引用。过去,basic_istream 有一个返回 void* 的转换运算符,您可以将其与 0 进行比较。现在它有一个 explicit operator bool(),因此您应该删除 != 0(一开始并不是真正需要的)。

关于c++ - 此 getline 测试在 MSVC 2012 中有效,但在 MSVC 2015 中出错,如何修复?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37216868/

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