-D 宏和 #define 宏 5 的优先级
Precedence of -D MACRO and #define MACRO 5
大家好,我在Visual C++ 6.0 IDE上编程,我的问题是: 我尝试从命令行定义宏 起初我这样做了: project->settings
c++ 命令定义,我输入了这个宏: -DHELLO="HELLO!
"当我从源代码中使用它时,我输入了:
#ifdef HELLO
HELLO;
#endif
在此之前,一切都好。
但是我的问题是那些需要参数的宏,那么我如何设置带有参数的宏,第二个问题是如何从源代码扩展它?
任何帮助真的非常感谢。我花了很多时间在谷歌上搜索和搜索,阅读电子书,但这没有帮助。
似乎不可能...
如果您查看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++
- 定义有趣的宏和正则表达式在Z3 C++绑定
- 操作系统平台支持宏和提升库
- C++ 宏和 lambda 捕获
- 可变参数宏和参数包扩展
- 有可能在同一个字符序列上有一个类似函数的宏和一个类似对象的宏吗
- 运算符优先级为 + 和 ++
- 优先级队列和 Prim 算法
- "%"宏和"$"宏在MSVS2010中的区别
- 宏和模板中的可变函数
- 宏和多行注释
- 宏和方法之间可能存在的冲突
- #define 宏和枚举使用相同的名称导致的冲突
- C++遇到的宏和错误
- 什么是计算宏和语法宏
- 组合预处理器宏和变量
- -D 宏和 #define 宏 5 的优先级
- 这些宏和类型定义有什么作用?如何将其扩展到成员函数
- C++预处理器宏和返回语句
- 运算符优先级顺序和计算混淆