Skip to content

Commit eb26dd7

Browse files
author
mikeblome
committed
updates to whats new from vsblog
1 parent 7d7ffc9 commit eb26dd7

File tree

1 file changed

+24
-0
lines changed

1 file changed

+24
-0
lines changed

docs/what-s-new-for-visual-cpp-in-visual-studio.md

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -56,6 +56,8 @@ Enable up to 30% faster incremental link times (vs. Visual Studio 2015) by not c
5656

5757
[!INCLUDE[vs_dev15_md](misc/includes/vs_dev15_md.md)] allows using /sdl with /await. We removed the /RTC limitation with Coroutines.
5858

59+
**Visual Studio 2017 version 15.3**: The Visual C++ compiler supports about 75% of C++17 features, including structured bindings, `constexpr` lambdas, `if constexpr`, inline variables, fold expressions, and adding `noexcept` to the type system. These are available under the /std:c++17 switch. The /permissive- conformance mode includes partial support for two-phase name lookup. For more information, see [C++ Conformance Improvements in Visual Studio 2017](cpp-conformance-improvements-2017.md).
60+
5961
### Codegen, security, diagnostics and versioning
6062
This release brings several improvements in optimization, code generation, toolset versioning, and diagnostics. Some notable improvements include:
6163

@@ -68,6 +70,9 @@ This release brings several improvements in optimization, code generation, tools
6870

6971
**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/).
7072

73+
**Visual Studio 2017 version 15.5**:
74+
Visual C++ runtime performance continues to improve due to better generated code quality. This means that you can simply recompile your code, and your app just runs faster. Some of the compiler optimizations are brand new, such as the vectorization of conditional scalar stores, the combining of calls sin(x) and cos(x) into a new sincos(x), and the elimination of redundant instructions from the SSA Optimizer. Other compiler optimizations are improvements to existing functionality such as vectorizer heuristics for conditional expressions, better loop optimizations, and float min/max codegen. The linker has a new and faster /OPT:ICF implementation which can result in up to 9% link time speedups, and there are other perf fixes in "incremental linking". For more information, see [/OPT (Optimizations)](https://docs.microsoft.com/en-us/cpp/build/reference/opt-optimizations) and [/INCREMENTAL (Link Incrementally)](https://docs.microsoft.com/en-us/cpp/build/reference/incremental-link-incrementally).
75+
7176
## C++ Libraries
7277

7378
### Standard Library improvements:
@@ -185,6 +190,19 @@ The CPPRestSDK, a cross-platform web API for C++, has been updated to version 2.
185190
* Win32 projects are now under the Windows Desktop category in the **New Project** dialog.
186191
* The Windows Console and Desktop Application templates now create the projects without displaying a wizard. There's a new Windows Desktop Wizard now under the same category that displays the same options as before.
187192

193+
**Visual Studio 2017 version 15.5**:
194+
Several C++ operations that use the IntelliSense engine for refactoring and code navigation run much faster. The following numbers are based on the Visual Studio Chromium solution with 3500 projects:
195+
|||
196+
|-|-|
197+
|Feature|Performance Improvement|
198+
|Rename|5.3x|
199+
|Change Signature |4.5x|
200+
|Find All References|4.7x|
201+
202+
203+
204+
C++ now supports Ctrl+Click GoTo Definition, making mouse navigation to definitions easy. The Structure Visualizer from the Productivity Power Tools pack is now also included in the product by default.
205+
188206
### Intellisense
189207
* The new SQLite-based database engine is now being used by default. This will speed up database operations like Go To Definition and Find All References, and will significantly improve initial solution parse time. The setting has been moved to Tools > Options > Text Editor > C/C++ > Advanced (it was formerly under ...C/C++ > Experimental).
190208

@@ -249,6 +267,9 @@ The popular extension [Visual C++ for Linux Development](https://visualstudiogal
249267

250268
**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/).
251269

270+
**Visual Studio 2017 version 15.5**:
271+
The Linux workload has added support for rsync as an alternative to sftp for synchronizing files to remote Linux machines.
272+
252273
### Game Development with C++:
253274
Use the full power of C++ to build professional games powered by DirectX or Cocos2d.
254275

@@ -276,6 +297,9 @@ The C++ Core Checkers for enforcing the [C++ Core Guidelines](https://github.com
276297

277298
**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).
278299

300+
**Visual Studio 2017 version 15.5**:
301+
New C++ Core Guidelines checks cover smart pointer correctness, correct use of global initializers, and flagging uses of constructs like `goto` and bad casts.
302+
279303
## Unit Testing
280304

281305
New Visual Studio extensions enable you to run your unit tests based on Google Test and Boost.Test directly in Visual Studio. For more information, see [C++ Unit Testing Updates: Announcing Boost.Test Adapter and Improved Google Test Support](https://blogs.msdn.microsoft.com/vcblog/2017/08/04/c-unit-testing-updates-announcing-boost-test-adapter-and-improved-google-test-support/).

0 commit comments

Comments
 (0)