我是C ++开发的新手,我正在尝试在Visual Studio中学习它。我如何确定我只学习C ++而不是托管扩展?我需要更改哪些配置设置?我应该坚持哪些项目类型?还有其他建议吗?
问题:
我试过关闭
项目属性 - > C / C ++ - >语言 - >禁用语言扩展
但这会产生编译错误:
错误1命令行错误D8016:'/ Za'和'/ clr'命令行选项不兼容
我不知道这里发生了什么......
答案 0 :(得分:20)
你有/clr
切换的事实意味着你正在使用.Net项目类型 - 你需要选择一个“Win32”项目类型来获得纯C ++项目。
避免任何自称为“托管”或“CLR”的内容。
答案 1 :(得分:5)
简而言之,所有Win32 C ++项目都是原生C ++。
名称中包含CLR的内容是托管C ++。
语言扩展与.NET无关。它是本机C ++的一些特定于供应商的扩展。 (因此,禁用语言扩展的效果与使用G ++编译器指定--ansi大致相似)
/ clr是你需要摆脱的旗帜。
答案 2 :(得分:4)
只要您坚持“新建项目”对话框中“Win32”节点下的项目类型,您将只处理本机代码。除非您进入项目属性并将项目类型切换为托管代码,否则无法在这些项目中意外编写某些托管代码。