devenv and #define
devenv and #define
我正在使用cmd devenv构建一些项目。
对于一些项目,我想在命令行中#define。
有没有一种方法可以使用cmd和devenv进行#定义?我不想创建新的配置。
您可以这样做:
-
将
$(AdditionalPreprocessorDefinitions)
添加到项目的预处理器定义列表中。之后,它们可能看起来像WIN32;_DEBUG;_CONSOLE;$(AdditionalPreprocessorDefinitions);%(PreprocessorDefinitions)
-
使用
msbuild
而不是devenv
来启动构建过程 -
通过在命令行中添加
/p:AdditionalPreprocessorDefinitions="SOMEDEF;ANOTHERDEF"
来指定其他预处理器定义。
请不要说我选择了名称AdditionalPreprocessorDefinitions只是为了清晰起见,你可以选择更短的名称。这只适用于VC2010,因为在早期版本中,VC++项目不是用msbuild构建的。
许多编译器允许您在命令行设置define宏。常用选项为"-D"。
请查看编译器文档以了解确切的语法。
编辑1:Visual Studio编译器有配置选项来指定IDE中的宏(使用"-D"开关将其传递给编译器)。
使用devenv.exe无法执行此操作,请参阅命令行选项。但是,您可以使用编译器cl.exe来执行此操作,但不能重用项目文件中的所有设置。
相关文章:
- C++核心准则 C35 对于接口类"A base class destructor should be either public and virtual, or protected and nonv
- 为什么C++逐位AND运算符在不同大小的操作数中表现为这样
- 为什么 Clang 不允许"and"作为函数名称?
- 位阵列上的快速AND运算
- 是否可以在 C++03 中定义'move-and-swap idiom'等效项
- 与C代码相比,为什么C++代码不需要"#define _POSIX_C_SOURCE 200809L"?
- 以下 C++ 代码用于 -> "#define idiv(a, b) (((a) + (b) / 2) / (b))" 是什么?
- BoostPython and CMake
- 如何以静态代码分析友好的方式使用 #define 防护?
- OpenSSL BIO and SSL_read
- C++相当于整数的 #define
- Gurobi GRBModel and GRBmodel in C++
- #define Dbg(fmt,..) (0) 是什么意思? 警告:表达式无效
- 在C++中使用变量而不是"#define"来指定数组大小是不是一种糟糕的做法?(C错误:在文件范围内
- 我们可以用 C 语言嵌套 #define 和 #if 吗?
- 如何将旧的 C 样式 #define 映射与现代C++进行调整?
- std::visit and std::variant usage
- 找不到 #define 的函数定义
- SHBrowseForFolder with BIF_BROWSEFORCOMPUTER and SHGetPathFr
- devenv and #define