我的一个程序,Debug版在所有机子上都能编译运行,Release在有些机子上能编译运行,有些只能编译不能运行,调试结果说明是CStringArray类型的成员变量在release版里是空指针,不知道为什么?求各位大虾指点,非常感谢!!!

解决方案 »

  1.   

    Debug 和 Release 编译方式的本质区别 Debug 通常称为调试版本,它包含调试信息,并且不作任何优化,便于程序员调试程序。Release 称为发布版本,它往往是进行了各种优化,使得程序在代码大小和运行速度上都是最优的,以便用户很好地使用。
    要是你想在任何机子上都能用,那就尝试着用Release + 静态链接库
      

  2.   

    将ASSERT()宏都换成VERIFY()宏试试。
      

  3.   

    用alt+B,+O,选择Release版本,然后alt+B+R完全编译下,以前我遇到过类似问题。
      

  4.   

    程序的Debug版在所有的机子上都能运行,只有Release版的在有些机子上不能运行,提示:““0x123af”引用的地址“0x00000004”不能“read”!!”,可是在别的机子上就没有这样的问题,即使是在可以运行的机子上编译完,拿到不能执行的机子上同样不能运行,提示同样的错误。
    感谢楼上的朋友的帮助。