请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

当文件不存在时,打开文件fout为空,为什么fout.fail()不报空指针

当文件不存在时,打开文件fout为空,为什么fout.fail()不报空指针
图片描述

正在回答

1回答

你打开文件模式对吗。你检查下当前目录下有没有该文件,打开文件时可以加上ios::_Nocreate 这个模式符。

0 回复 有任何疑惑可以回复我~
  • 提问者 佐岸2 #1
    老师,我的意思是说,在Java中有个一个对象为空对象,去调用该对象的方法时,会报空指针,但是在C++中, fstream 对象为空时,好像还能调用这个对象中的方法,比如 fout.fail()。这个是为什么呢?
    回复 有任何疑惑可以回复我~ 2021-10-07 12:52:27
  • quickzhao 回复 提问者 佐岸2 #2
    fail检查的是系统流的状态,不是当前文件对象的状态。
    回复 有任何疑惑可以回复我~ 2021-10-07 13:17:53
  • 提问者 佐岸2 #3
    非常感谢!
    回复 有任何疑惑可以回复我~ 2021-10-07 13:21:07
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信