
2个回答
展开全部
错误提示框上说了,这是一个断言错误,在filecore.cpp文件的第295行,打开这个文件找到295行发现是INVALID_HANDLE_VALUE错误,无效的文件句柄。说明文件根本没有成功打开,这样的话用串行化输入到文件当然出错,因为文件都没有打开。
追问
怎么打开呢?
追答
构造串行化对象CArchive的时候需要提供文件对象CFile的指针。
使用串行化对象前应该实例化CFile文件对象,
CFile file;
打开文件
file.open("c:\\1.txt",CFile::modeReadWrite);
使用该文件对象指针实例化串行化对象
CArchive arch(&file,CArchive::store);
然后就可以对串行化对象arch进行写入数据了
展开全部
错误提示可查出信息:文件关闭时,文件句柄已经为空。
没有更多信息可以看出,你只能点击重试进入调试,看看代码中断处(通过调用堆栈找到自己代码)看看代码逻辑和各变量情况分析具体问题。
没有更多信息可以看出,你只能点击重试进入调试,看看代码中断处(通过调用堆栈找到自己代码)看看代码逻辑和各变量情况分析具体问题。
追问
可以帮我看看程序吗?,我是初学者。。。
追答
既然是在学习,调试也是需要学习的很重要部分啊,我给你调了,就失去学习的意义了。
F5运行程序,在序列化部分设置断点,单步执行,看看各个变量的变化,是否和自己的逻辑思路一致,分析并找到问题。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询