将流转换为布尔-如何在getline()中完成

时间:2019-04-01 21:31:22

标签: c++ stream type-conversion getline

我想知道如何使用以下代码链接流操作:

while(getline(stream,string){
//do stuff
}

我已经在Internet,stackoverflow和许多其他站点上阅读了多个线程。我发现流使用2个转换运算符

operator void*() const; //c++98
explicit operator bool() const; //c++11 

虽然我可以完全理解c ++ 11的转换,但在了解如何在bool测试中处理指针的过程中,我有些疑惑。

The reference说,如果一切正常,则在出现问题时返回nullptr并返回其他值。 了解所有这些知识后,我认为可以了,然后您对指针执行if()测试,但是如果我尝试这样做会怎样呢?我的应用崩溃了。

有人可以向我解释一下,如何将void *指针视为真/假?

0 个答案:

没有答案