当前位置:  开发笔记 > 编程语言 > 正文

有没有办法在运行时设置#define的值?

如何解决《有没有办法在运行时设置#define的值?》经验,为你挑选了1个好方法。

我想知道是否有办法在运行时设置#define的值.

我假设在下面的代码中有针对Oracle特定和特定于Sql Server的查询.

#define oracle

// ...    

#if oracle
// some code
#else
// some different code.
#endif

Ana Betts.. 14

绝对不是,#define在编译器甚至看到它之前由预处理器编译出来 - 所以令牌'oracle'甚至不在你的代码中,只是'1'或'0'.将#define更改为全局变量或(更好)返回正确值的函数.



1> Ana Betts..:

绝对不是,#define在编译器甚至看到它之前由预处理器编译出来 - 所以令牌'oracle'甚至不在你的代码中,只是'1'或'0'.将#define更改为全局变量或(更好)返回正确值的函数.

推荐阅读
低调pasta_730
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有