关于VC调试运行和直接运行(不调试)的区别!解决方案
关于VC调试运行和直接运行(不调试)的区别!
想请问下这两种启动程序的方式有何不同?我有个程序,在DEBUG下用调试运行和直接运行(不调适)启动都能成功的,但在RELEASE模式下,就只有前者可以正常启动,后者启动失败。正在研究是什么问题,望指点,谢谢
------解决方案--------------------
你都知道了,就是一个调试,一个不调试而已。没啥区别。
你程序启动中,会读什么相对路径的文件吗?
------解决方案--------------------
查查变量初始化。
------解决方案--------------------
好像在代码的优化方面也存在区别
------解决方案--------------------
release模式要单独设置,比如你是否添加的附加库文件等
------解决方案--------------------
区别大了
1.编译选项不一样,就凭这一点,就有可能导致各种怪异问题。
2.断言。。。
3.调试时,有异常或者输出信息的话,直接发给IDE。这样的话,调试时有可能可以运行起来,直接运行则直接DOWN。
具体原因楼主可把所有的异常都打开 捕捉一下吧。
------解决方案--------------------
debug下可以成功,release下出错,可能是因为指针的初始化引起的,一定要全部初始化,还有可能就是把函数宏定义也可能导致出错
------解决方案--------------------
可以调试不能运行可能是你调试还没走到出问题的代码位置
------解决方案--------------------
关闭release模式设置中的代码优化选项试试。
再不行只能在代码中怀疑有问题的地方写日志文件查原因了。
想请问下这两种启动程序的方式有何不同?我有个程序,在DEBUG下用调试运行和直接运行(不调适)启动都能成功的,但在RELEASE模式下,就只有前者可以正常启动,后者启动失败。正在研究是什么问题,望指点,谢谢
------解决方案--------------------
你都知道了,就是一个调试,一个不调试而已。没啥区别。
你程序启动中,会读什么相对路径的文件吗?
------解决方案--------------------
查查变量初始化。
------解决方案--------------------
好像在代码的优化方面也存在区别
------解决方案--------------------
release模式要单独设置,比如你是否添加的附加库文件等
------解决方案--------------------
区别大了
1.编译选项不一样,就凭这一点,就有可能导致各种怪异问题。
2.断言。。。
3.调试时,有异常或者输出信息的话,直接发给IDE。这样的话,调试时有可能可以运行起来,直接运行则直接DOWN。
具体原因楼主可把所有的异常都打开 捕捉一下吧。
------解决方案--------------------
debug下可以成功,release下出错,可能是因为指针的初始化引起的,一定要全部初始化,还有可能就是把函数宏定义也可能导致出错
------解决方案--------------------
可以调试不能运行可能是你调试还没走到出问题的代码位置
------解决方案--------------------
关闭release模式设置中的代码优化选项试试。
再不行只能在代码中怀疑有问题的地方写日志文件查原因了。