You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/what-s-new-for-visual-cpp-in-visual-studio.md
+18-7Lines changed: 18 additions & 7 deletions
Original file line number
Diff line number
Diff line change
@@ -1,16 +1,16 @@
1
1
---
2
2
title: "What's New for Visual C++ in Visual Studio | Microsoft Docs"
3
3
ms.custom: ""
4
-
ms.date: "3/7/2017"
4
+
ms.date: "8/2/2017"
5
5
ms.reviewer: ""
6
6
ms.suite: ""
7
7
ms.technology:
8
8
- "vs-ide-general"
9
9
ms.tgt_pltfrm: ""
10
10
ms.topic: "article"
11
11
ms.assetid: 8801dbdb-ca0b-491f-9e33-01618bff5ae9
12
-
author: "BrianPeek"
13
-
ms.author: "brpeek"
12
+
author: "mblome"
13
+
ms.author: "mblome"
14
14
manager: "ghogen"
15
15
translation.priority.ht:
16
16
- "cs-cz"
@@ -42,7 +42,9 @@ In this release, we've updated the C++ compiler and standard library with enhanc
42
42
43
43
### New compiler switches
44
44
45
-
-**/std:c++14** and **/std:c++latest**: These compiler switches enable you to opt-in to specific versions of the ISO C++ programming language in a project. For more information, see [Standards version switches in the compiler](https://blogs.msdn.microsoft.com/vcblog/2016/06/07/standards-version-switches-in-the-compiler). Most of the new draft standard features are guarded by the /std:c++latest switch.
45
+
-**/std:c++14** and **/std:c++latest**: These compiler switches enable you to opt-in to specific versions of the ISO C++ programming language in a project. For more information, see [-std (Specify Language Standard Version)](build/reference/std-specify-language-standard-version.md). Most of the new draft standard features are guarded by the /std:c++latest switch.
46
+
47
+
**Visual Studio 2017 version 15.3**: The **/std:c++17** option enables the set of C++17 features implemented by the Visual C++ compiler. This option disables compiler and standard library support for features that are changed or new in more recent versions of the Working Draft and defect updates of the C++ Standard.
46
48
47
49
-[/permissive-](build/reference/permissive-standards-conformance.md): Enable all strict standards conformance compiler options and disable most Microsoft-specific compiler extensions (but not __declspec(dllimport), for example). (Off by default but will be on by default at some point in the future.)
48
50
@@ -64,6 +66,8 @@ This release brings several improvements in optimization, code generation, tools
64
66
- Improved diagnostics: The output window now shows the column where an error occurs. For more information, see [C++ compiler diagnostics improvements in VS "15" Preview 5](https://blogs.msdn.microsoft.com/vcblog/2016/10/05/c-compiler-diagnostics-improvements-in-vs-15-rc/).
65
67
- When using co-routines, the Experimental keyword "yield" (available under /await switch) has been removed. Your code should be updated to use the "co_yield" instead. For more information, see the Visual C++ Team blog.
66
68
69
+
**Visual Studio 2017 version 15.3**: Additional improvements to diagnostics in the compiler. For more information, see [Diagnostic Improvements in Visual Studio 2017 15.3.0](https://blogs.msdn.microsoft.com/vcblog/2017/07/21/diagnostic-improvements-in-vs2017-15-3-0/).
70
+
67
71
## C++ Libraries
68
72
69
73
### Standard Library improvements:
@@ -131,27 +135,30 @@ The CPPRestSDK, a cross-platform web API for C++, has been updated to version 2.
131
135
132
136
* The experimental refactoring features Change Signature and Extract Function are now available by default.
133
137
134
-
*We've enabled the new experimental feature for C++ projects 'Faster project load'. The next time you open a C++ project it will load faster, and the time after that it will load really fast!
138
+
*The experimental feature for C++ projects 'Faster project load'. The next time you open a C++ project it will load faster, and the time after that it will load really fast!
135
139
136
140
Some of these features are common to other languages, and some are specific to C++. For more information about these new features, see [Announcing Visual Studio “15”](https://blogs.msdn.microsoft.com/visualstudio/2016/10/05/announcing-visual-studio-15-preview-5/).
137
141
138
142
### Support for non-MSBuild projects with Open Folder
139
-
Visual Studio 2017 introduces the “Open Folder” feature, which enables you to code, build and debug in a folder containing source code without the need to create any solutions or projects. This makes it a lot simpler to get started with Visual Studio even if your project is not an MSBuild-based project. With “Open Folder” you get access to the powerful code understanding, editing, building and debugging capabilities that Visual Studio already provides for MSBuild projects. For more information, see [Bring your C++ codebase to Visual Studio with “Open Folder”](https://blogs.msdn.microsoft.com/vcblog/2016/10/05/bring-your-c-codebase-to-visual-studio-with-open-folder/).
143
+
Visual Studio 2017 introduces the “Open Folder” feature, which enables you to code, build and debug in a folder containing source code without the need to create any solutions or projects. This makes it a lot simpler to get started with Visual Studio even if your project is not an MSBuild-based project. With “Open Folder” you get access to the powerful code understanding, editing, building and debugging capabilities that Visual Studio already provides for MSBuild projects. For more information, see [Open Folder projects in Visual C++](ide/non-msbuild-projects.md).
140
144
141
145
* Improvements to the Open Folder experience. You can customize the experience through these json files:
142
146
- CppProperties.json to customize the IntelliSense and browsing experience.
143
147
- Tasks.json to customize the build steps.
144
148
- Launch.json to customize the debugging experience.
145
149
150
+
**Visual Studio 2017 version 15.3**: Improved support for alternative compilers and build environments such as MinGW and Cygwin. For more information, see [Using MinGW and Cygwin with Visual C++ and Open Folder](https://blogs.msdn.microsoft.com/vcblog/2017/07/19/using-mingw-and-cygwin-with-visual-cpp-and-open-folder/).
151
+
146
152
### CMake support via Open Folder
147
-
Visual Studio 2017 introduces support for using CMake projects without converting to MSBuild project files (.vcxproj). For more information, see [CMake support in Visual Studio](https://blogs.msdn.microsoft.com/vcblog/2016/10/05/cmake-support-in-visual-studio/) and [CMake support in Visual Studio 2017 - what’s new in the RC.2 update](https://blogs.msdn.microsoft.com/vcblog/2016/12/20/cmake-support-in-visual-studio-2017-whats-new-in-the-rc-update/). Opening CMake projects with “Open Folder” will automatically configure the environment for C++ editing, building and debugging.
153
+
Visual Studio 2017 introduces support for using CMake projects without converting to MSBuild project files (.vcxproj). For more information, see [CMake projects in Visual C++](ide/cmake-tools-for-visual-cpp.md). Opening CMake projects with “Open Folder” will automatically configure the environment for C++ editing, building and debugging.
148
154
149
155
* C++ IntelliSense will work without the need to create a CppProperties.json file in the root folder. Along with this, we've added a new dropdown to allow users to easily switch between configurations provided by CMake and CppProperties.json files.
150
156
151
157
* Further configuration is supported via a CMakeSettings.json file that sits in the same folder as the CMakeLists.txt file.
152
158
153
159

154
160
161
+
**Visual Studio 2017 version 15.3**: Support added for the CMake Ninja generator. For more information, see [CMake support in Visual Studio – what’s new in 2017 15.3 Preview 2](https://blogs.msdn.microsoft.com/vcblog/2017/06/14/cmake-support-in-visual-studio-whats-new-in-2017-15-3-preview-2/).
155
162
156
163
## C++ Installation Workloads
157
164
@@ -163,6 +170,8 @@ To successfully create Win32 projects in the C++ desktop workload, you must inst
163
170
### Linux Development with C++:
164
171
The popular extension [Visual C++ for Linux Development](https://visualstudiogallery.msdn.microsoft.com/725025cf-7067-45c2-8d01-1e0fd359ae6e) is now part of Visual Studio. This installation provides everything you need to develop and debug C++ applications running on a Linux environment.
165
172
173
+
**Visual Studio 2017 version 15.2**: Improvements for cross-platform code sharing and type visualization. For more information, see [Linux C++ improvements for cross-platform code sharing and type visualization](https://blogs.msdn.microsoft.com/vcblog/2017/05/10/linux-cross-platform-and-type-visualization/).
174
+
166
175
### Game Development with C++:
167
176
Use the full power of C++ to build professional games powered by DirectX or Cocos2d.
168
177
@@ -188,6 +197,8 @@ The C++ Core Checkers for enforcing the [C++ Core Guidelines](https://github.com
**Visual Studio 2017 version 15.3**: Support added for rules related to resource management. For more information, see [Using the C++ Core Guidelines checkers](/visualstudio/code-quality/using-the-cpp-core-guidelines-checkers).
201
+
191
202
## Visual Studio Graphics Diagnostics
192
203
193
204
Visual Studio Graphics Diagnostics is a set of tools for recording and analyzing rendering and performance problems in Direct3D apps. Graphics Diagnostics features can be used with apps that are running locally on your Windows PC, in a Windows device emulator, or on a remote PC or device.
0 commit comments