gpt4 book ai didi

c++ - 程序中出现错误 '#'

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:21:35 25 4
gpt4 key购买 nike

我想根据是否使用-std=c++0x 来定义一个宏。如果我尝试下面的宏,我会遇到错误 error stray '#' in program

下面的代码是否不正确/是否允许 C++ 在 #define 中使用预处理器 #if/#endif

   #define DEF_ME (p) \
#if __GXX_EXPERIMENTAL_CXX0X__ \
#endif

我在 Linux 中使用 g++ 4.4.7。

最佳答案

Is the code below incorrect / is it allowed C++ to use preprocessor #if / #endif within a #define?

不,那是不允许的。但是您可以使用相反的方法来获得相同的结果:

#if  __GXX_EXPERIMENTAL_CXX0X__
# define DEF_ME (p) one way
#else
# define DEF_ME (p) another way
#endif

关于c++ - 程序中出现错误 '#',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21674016/

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