我想知道是否有办法在运行时设置#define的值.
我假设在下面的代码中有针对Oracle特定和特定于Sql Server的查询.
#define oracle
// ...
#if oracle
// some code
#else
// some different code.
#endif
Run Code Online (Sandbox Code Playgroud)
Ana*_*tts 14
绝对不是,#define在编译器甚至看到它之前由预处理器编译出来 - 所以令牌'oracle'甚至不在你的代码中,只是'1'或'0'.将#define更改为全局变量或(更好)返回正确值的函数.
| 归档时间: |
|
| 查看次数: |
5964 次 |
| 最近记录: |