请稍等 ...
×

采纳答案成功!

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

VS编译器下 assert(getline(file , line)) 中的 getline 好像没有执行?

如题:

        按照课程源码在VS2015下运行得到的一直是空白图,后来尝试将 assert(getline(file , line)) 中的 getline 单独拿出作为执行语句后,程序输出了正常结果。

        这是因为 VS 中的 assert 里的 getline 没有执行吗?但是以往的简单表达式越界判断还是报过错的,那是因为没有有效执行吗,就是只是判断了一下,但是并不能对后面语句生效?还是其他的什么原因呀?

//img1.sycdn.imooc.com//szimg/5b7bcba800010e1403650344.jpg

正在回答

1回答

测试一下一句assert(false)看assert语句是否执行了?


目测因为:你在release模式下运行,assert不执行。或者由于你的ide配置,assert没有运行:)

0 回复 有任何疑惑可以回复我~
  • 提问者 SunYizhi #1
    非常感谢!
    回复 有任何疑惑可以回复我~ 2018-08-22 11:08:43
  • 提问者 SunYizhi #2
    嗯,在同样位置添加assert(false)也没执行,改成debug模式后输出了正确结果;不过在之前排序的时候就一直用release调试了,也遇到过assert生效的情况;可能还是某个时候IDE的配置改动了。。。算了,以后debug,release都跑一次就行了 0.0
    回复 有任何疑惑可以回复我~ 2018-08-22 11:16:19
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信