DEBUG 版本速度慢,生成的程序代码大,不过包含有调试信息,适合做程序调试用。
RELEASE 版本速度快,程序的代码也很小,是发行用的版本。

解决方案 »

  1.   

    为什么有时候程序在DEBUG版本是运行正确,到RELEASE版本就出错了
      

  2.   

    许多全部大写的宏在Debug和Release下面定义不同,所以存在Debug和Release效果不一样的现象,其实这是为了编程方便,比如你希望Debug的时候弹个消息框出来告诉你一些信息,然后Release的时候不需要告诉用户,你就可以#ifdef _DEBUG
    AfxMessageBox("debug version running");
    #endif这样Release就不会弹出来,但是Debug会,同理,许多宏也是这么定义的,所以一定不一样
    而且Debug和Release优化方式也可能不一样,内存管理不一样,Debug还多许多保护代码,所以Debug相对健壮,但是文件大,速度慢,比如Debug是一个加了辅助轮的自行车,你很难摔倒,而Release没有辅助轮,但是大家都不怕摔倒,因为技术过关了
      

  3.   

    不会吧,我通常是Release版本运行正常,而Debug版本运行出错
      

  4.   

    Release版本是把有些出错的信息能忽略掉,也根本不会出现什么提示。但有时Debug版本可以运行,Release版本却不行。我在一个程序中加入vc界面的代码,在debug中加入lib,Release也照样做了,但是Release版本就会出错。而Debug运行得好好的。
      

  5.   

    如果你要在一台没有VC的机子运行程序,用Release版本吧
      

  6.   

    Release版本生成的代码没有调试信息。所以相对速度快,便于发行。