Debug Assertion Failed!
Program: D:\wyuStud\debug\wyuStud.exe
File: afx.inl
Line:157 c++
可能问题:1.野指针;2.内存泄露
解决方法:函数
1.看一看你的程序里是否是有ASSERT()或VERIFY()语句。这两个宏是用来测试它的参数是否为真的。出现你说的,这说明你的指针或表达试有问题post
2.File: afx.inl
Line:157
打开看看就知道了测试
3.vc++中遇到过此问题,在release下回忽略此问题,其实就是野指针的问题,在release版本下不用关心这个问题,也就是系统帮你给屏蔽了,可是问题仍是存在的,真正使用的时候,偶尔会出来给你报个小错。建立窗体等的时候没有new,可是在析构的时候delete了,就会在debug环境下,报这样的错误。打开"编译"->"配置"->"把里面除了release其余的选项所有删除,再构件就OK了
4.首先若是你用的是vc6的话:
a.按F5运行你的程序
b.在出错时,选择“重试”
c.按ALT+7调出“调用栈”窗口
d.双击从上往下的最近一个本身定义的函数,系统会自动把该函数所在的文件显示出来,此时程序就暂停在光标处。通常来讲错误就出在这附近。你能够经过查看变量的值来确认ui
5.能够先声明一个临时的CString变量而后做为暂存,而后把你取得的值放入其中,以后再赋给另外一个你要使用的变量,便可解决问题 spa
6.多是在编写函数调用指针变量时没有分配空间(若是是在类中定义的指针变量,则指针在多个函数中引用时要分别从新分配空间),检查一下。
7.相似的问题,多是由于输出对象建立不成功,因而使用的时候用的就是空的对象,因而就出现问题了。.net
8.“build->clean”debug
9."Project"->"setting"->"点击c/c++"->"Category选项中选择Preprocessor"
->"在Undefined symbols:填写_DEBUG" 从新编译运行便可指针
10.我是在作一个ActiveX控件的时候遇到的,因为是初学者,
因此在一个事件处理函数中这些轻率的写:
ClassMyControl pControl;
pControl.f1(); 这些就会出现那个错误,改完Release后虽然异常被屏蔽了,但却直接退出了,解决方法是,声明一个ActiveX控件对象后,还要建立才能正在建立。
pControl.Create(``````);
pControl.f1(); OK!!!对象