关于VC调试运行和直接运行(不调试)的区别!

RabbitLBJ 2011-04-25 06:51:33
想请问下这两种启动程序的方式有何不同?我有个程序,在DEBUG下用调试运行和直接运行(不调适)启动都能成功的,但在RELEASE模式下,就只有前者可以正常启动,后者启动失败。正在研究是什么问题,望指点,谢谢
...全文
685 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
clever101 2014-01-17
  • 打赏
  • 举报
回复
貌似调试运行变量会有初始化,直接运行没有。
就想叫yoko 2011-04-25
  • 打赏
  • 举报
回复
可以调试不能运行可能是你调试还没走到出问题的代码位置
RabbitLBJ 2011-04-25
  • 打赏
  • 举报
回复
大家请注意这句话:
但在RELEASE模式下,就只有前者可以正常启动,后者启动失败。

也就是说在RELEASE模式下按F5也是可以启动成功的,但是CTRL+F5就不行。这个应该都是RELEASE模式下的设置,不相同吗??
另外我并没有读取什么路径之类的东西。程序比较大,不方便上传代码,谢谢各位了
lt114896 2011-04-25
  • 打赏
  • 举报
回复
debug下可以成功,release下出错,可能是因为指针的初始化引起的,一定要全部初始化,还有可能就是把函数宏定义也可能导致出错
gangyilovevc 2011-04-25
  • 打赏
  • 举报
回复
区别大了
1.编译选项不一样,就凭这一点,就有可能导致各种怪异问题。
2.断言。。。
3.调试时,有异常或者输出信息的话,直接发给IDE。这样的话,调试时有可能可以运行起来,直接运行则直接DOWN。
具体原因楼主可把所有的异常都打开 捕捉一下吧。
delphiwcdj 2011-04-25
  • 打赏
  • 举报
回复
release模式要单独设置,比如你是否添加的附加库文件等
delphiwcdj 2011-04-25
  • 打赏
  • 举报
回复
好像在代码的优化方面也存在区别
LanglyTiger 2011-04-25
  • 打赏
  • 举报
回复
查查变量初始化。
healer_kx 2011-04-25
  • 打赏
  • 举报
回复
你都知道了,就是一个调试,一个不调试而已。没啥区别。
你程序启动中,会读什么相对路径的文件吗?
Sou2012 2011-04-25
  • 打赏
  • 举报
回复
没有什么特别的区别。 只是调试的时候,会写入一些调试用的信息。
赵4老师 2011-04-25
  • 打赏
  • 举报
回复
关闭release模式设置中的代码优化选项试试。
再不行只能在代码中怀疑有问题的地方写日志文件查原因了。

64,654

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧