在Visual Studio 2017 for Mac中创建并选择配置定义的问题
在Visual Studio 2017 for Mac中添加自定义生成配置并设置预定义宏
搞定这个任务其实没那么复杂,跟着下面的步骤来就行:
1. 添加新的生成配置
- 打开你的解决方案,要么点击顶部菜单栏的Project -> Active Configurations,要么直接点工具栏上的Debug/Release下拉框,选择Edit Configurations...
- 在弹出的配置管理器窗口里,点左下角的Add按钮
- 给新配置起个好记的名字(比如
CustomIPEnv),然后选一个基础配置来复制(推荐选Debug或者Release,看你需要的编译特性),勾选“Apply to all projects”(如果所有项目都要用到这个配置的话),最后点OK保存
2. 为新配置添加预定义宏
这一步分两种项目类型,你对应着来:
如果你是C#项目
- 右键选中你的项目,选择Options(或者点菜单栏Project -> Options)
- 在左侧导航栏里找到Build选项卡,找到Conditional compilation symbols这一项,点击旁边的铅笔图标进入编辑界面
- 在输入框里添加你的宏,格式是
MYIP="192.168.xxx.xxx"(注意字符串宏一定要加双引号,不然编译会出问题) - 最重要的:确保窗口顶部的Configuration下拉框选的是你刚才新建的那个配置,然后点OK保存设置
如果你是C/C++项目
- 同样右键选项目Options,左侧导航栏找Build -> Compiler
- 在Preprocessor区域找到Preprocessor Macros,添加
MYIP="192.168.xxx.xxx" - 同样要确认顶部的Configuration是你的新配置,保存即可
3. 测试配置是否生效
- 在工具栏的配置下拉框里切换到你新建的配置
- 写一段测试代码验证:
// C#示例代码 #if MYIP this.ipaddress = MYIP; #else this.ipaddress = "192.168.1.100"; #endif
// C++示例代码 #ifdef MYIP this->ipaddress = MYIP; #else this->ipaddress = "192.168.1.100"; #endif
- 清理并重新生成项目,运行后就能看到IP地址已经被宏替换成你定义的内容了
几个要注意的小细节
- 如果解决方案里有多个项目,每个需要用到这个宏的项目都要重复第二步的设置
- 切换配置后一定要清理再生成,避免旧的编译缓存影响结果
- 如果宏是纯数字或者不需要字符串,直接写
MYMACRO或者MYNUMBER=123就行,不用加引号
内容的提问来源于stack exchange,提问作者Ian Smith
相关产品推荐
相关产品推荐

