gpt4 book ai didi

c++ - #ifdef 中的代码包含在运行时或编译过程中?

转载 作者:太空宇宙 更新时间:2023-11-04 00:50:46 25 4
gpt4 key购买 nike

我在 C++ 代码中使用 #define ENABLE_FLAG 并相应地尝试包含一段代码,同时定义了 ENABLE_FLAG

我的问题是,里面的特定代码集

#ifdef ENABLE_FLAG
....setofcode....
#endif

在运行时通过#ifdef 检查进行评估,还是编译器本身在编译期间看到ENABLE_FLAG 并包含代码?

最佳答案

#ifdef 以及您看到的以 # 作为该行第一个字符的所有其他内容都是“C 预处理器指令”。这些甚至在正确编译之前就已处理。因此根本不会做出任何运行时决定——启用/禁用代码块是在构建过程的最早部分决定的。

关于c++ - #ifdef 中的代码包含在运行时或编译过程中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19341115/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com