能力值:
( LV2,RANK:10 )
|
-
-
2 楼
尽量别打优化的注意,很不稳定(也许某个版本就改变优化策略了)
|
能力值:
( LV2,RANK:10 )
|
-
-
3 楼
就算是release 如果你的语法完全不对。也会报错吧。
callxxx 函数如果不存在会不报错?
优化是在语法检查后面的事。
|
能力值:
( LV4,RANK:50 )
|
-
-
4 楼
不会的,函数有定义,没有实现,表示为链接不过
release下把这种不需要的全被优化掉了,所以是没有任何问题的
但debug的最小模式都不能优化掉这种
|
能力值:
( LV4,RANK:50 )
|
-
-
5 楼
还不如这样子
#define XXX 0 #if XXX callxxx(); #endif
|
能力值:
( LV2,RANK:10 )
|
-
-
6 楼
vs优化选项调一下就可以了啊
|
能力值:
( LV2,RANK:10 )
|
-
-
7 楼
以下为你的原话
不管callxxx函数是否存在
是否存在跟是否实现是一回事吗? are you kidding me ?
|
能力值:
( LV2,RANK:10 )
|
-
-
8 楼
if (XXX)
->
#if (XXX)
#endif
|
能力值:
( LV4,RANK:50 )
|
-
-
9 楼
在if0里面#if dbg
|
能力值:
( LV4,RANK:50 )
|
-
-
10 楼
这样是可以呀,但开源工程中这种太多了,几千个,受不了啊
就算修改后,再更新也麻烦,
所以看有没有编译器上设置一下,全过的方法
|
能力值:
( LV4,RANK:50 )
|
-
-
11 楼
求哪个选项?
|
能力值:
( LV4,RANK:50 )
|
-
-
12 楼
我说的存在是指有声明,没有实现
就不纠结这个了吧?
|
能力值:
( LV4,RANK:50 )
|
-
-
13 楼
几千个修改受不了,要命
|
能力值:
( LV4,RANK:50 )
|
-
-
14 楼
同楼上,几千个修改要命
|
能力值:
( LV2,RANK:10 )
|
-
-
15 楼
刚开始没看到你说的要保存debug的特性,设置项是工程属性->c/c++->optimization,右侧有个optimization,release默认是O2,debug是disable,你设置成release的O2,不知道能不能符合你的要求。
|
能力值:
( LV4,RANK:50 )
|
-
-
16 楼
全局替换下不就好了
|
能力值:
( LV4,RANK:50 )
|
-
-
17 楼
我本意是想保留debug特性,是指能正常调试
如果设置成o2后,代码调试/变量/断点都可能会出问题
所以,如果有直接能优化掉不需要的代码的开关就好了,中影响调试的
|
能力值:
( LV2,RANK:10 )
|
-
-
18 楼
那就不知道了,嘿嘿,你搞定了麻烦告诉我下,谢谢了
|
|
|