gpt4 book ai didi

c++ - -D MACRO 和#define MACRO 5 的优先级

转载 作者:太空宇宙 更新时间:2023-11-04 11:51:08 24 4
gpt4 key购买 nike

大家好,我在 Visual C++ 6.0 IDE 上编程,我的问题是:起初我尝试从命令行定义宏,我这样做了:project->settings c++ 命令定义,我输入了这个宏:-DHELLO="HELLO!"当我从我输入的源代码中使用它时:

#ifdef HELLO
HELLO;
#endif

直到这一切都OK。

但我的问题是那些接受参数的宏,所以我如何设置带参数的宏,第二个问题是如何从源代码扩展它?

非常感谢任何帮助。我花了很多时间谷歌搜索和阅读电子书,但这没有帮助。

最佳答案

看来是不可能的……

如果您查看 Microsoft 文档,/D 选项的构造如下:

/Dname[= | # [{string | number}] ]

因为添加括号似乎是不可能的,我不知道是否可以使用此命令行选项创建类函数宏...


注意:我在 Visual Studio 上试过很奇怪,我的智能感知将它视为类似函数的宏,因此代码中没有可见的错误(下面没有红线),但是当它出现时编译我得到:

error C3861: 'MACRO_TEST': identifier not found 

定义类型:

/D"MACRO_TEST( tst )= tst" // or -D"MACRO_TEST( tst )= tst"

关于c++ - -D MACRO 和#define MACRO 5 的优先级,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18185456/

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