2

我想在我的项目中使用 C++17,而不必在开始新项目时总是在属性中更改它。这可能吗?

谢谢!

4

3 回答 3

3

要仅为项目更改默认值,请参阅如何更改默认 C++ 模板文件?.

要更改所有C++ 项目的默认值,请在 中查找以下两个.props文件 $(UserRootDir),通常为C:\Users\<user name>\AppData\Local\Microsoft\MSBuild\v4.0.

    Microsoft.Cpp.Win32.user.props
    Microsoft.Cpp.x64.user.props

然后在下面插入以下内容Project/ItemDefinitionGroup/ClCompile

    <ConformanceMode>true</ConformanceMode>
    <LanguageStandard>stdcpp17</LanguageStandard>

如果这些.props文件不存在并且您必须从头开始创建它们,则每个文件都将具有以下完整内容。

<?xml version="1.0" encoding="utf-8"?> 
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  <ItemDefinitionGroup>
    <ClCompile>
      <ConformanceMode>true</ConformanceMode>
      <LanguageStandard>stdcpp17</LanguageStandard>
    </ClCompile>
  </ItemDefinitionGroup>
</Project>

有关属性文件的更多详细信息,请参阅我的其他答案,包括在哪里可以找到每台机器的默认值(in $(VCTargets)),而不是每用户的默认值(in $(UserRootDir))。

于 2020-09-27T03:36:45.737 回答
1

在 View -> Other Windows -> Property Manager 下编辑属性表 接下来打开项目树,然后打开您希望更改的平台。

此处的设置默认继承相应平台的所有项目配置,因此右键单击“Microsoft.Cpp..User”节点,然后转到 C/C++ -> 语言并设置所需的语言标准,然后单击确定。

您可能需要右键单击项目节点并选择保存,我不确定这是否真的有必要。

于 2020-09-27T03:29:37.163 回答
0

你可以通过设置来做到这一点(left down corner) -> command palette.. -> c/c++ Edit configuration(UI)。它将带您进入 IntelliSense 配置。从那里您可以更改 C 和 C++ 的版本。

于 2021-11-01T17:09:27.110 回答