我的意思的情况下是这样的(这当然是错误的代码/想法只/因为我知道它不喜欢的工作):有没有办法检查变量是否在编译时声明?
int main() {
int my_int = 42;
#ifdef my_int
my_int = 43;
#else
int my_int = 43;
}
我知道,C/C++程序不能看到的名字变量,并不能告诉它是否设置,但编译器可以做到这一点,我问这里有什么办法可以指示编译器给定的行为,如忽略或插入一段代码,当它遇到一个情况时,有重复的声明同一块。
由于预处理器不知道该信息,因此无法使用预处理器语句来完成。只有编译器才能做到。它没有。 –
如果你的功能如此之大以至于你需要这个功能,你应该考虑将其拆分... –
是否有任何代码中的“编译器指令”? – rsk82