我正在尝试在我的程序中使用#ifdef preprocessive指令。 我想在运行时定义这个宏(如果我在另一个配置文件中定义这个值会更好,这样我就可以定义它或者在没有编译的情况下随时取消它),所以我不想在make中定义它文件。
我在谷歌搜索过很多相关内容。但我无法得到我想要的确切信息。
有没有办法在运行时定义它。 如果是的话,请提出建议。
答案 0 :(得分:6)
不,#ifdef
和其他#
指令仅在编译期间使用,实际上甚至在编译本身之前由称为预处理器的(内部)工具。< / p>
如果你想要运行时可配置性,你需要使用普通的if
语句等。或者制作相同程序的两个版本等。