Visual C++ in Visual Studio

The Visual Studio 2017 programming language and development tools help you develop native Universal Windows apps, native desktop and server applications, cross-platform libraries that run on Android and iOS as well as Windows, and managed apps that run on the .NET Framework.

Who is this documentation for?

This content is for C++ developers who are writing programs.

  • If you are looking for a C++ redistributable package and runtime components so that you can run a program, go to the Microsoft Download Center and enter Visual C++ in the search box.

  • If you are looking for an introduction to C++ programming concepts, go to one of the many websites that offer this content, or get a copy of Programming -- Principles and Practice Using C++ (Second Edition) by the inventor of C++, Bjarne Stroustrup. The Visual C++ content assumes you already have a basic familiarity with C++.

  • If you are looking for the Visual C++ compiler, you need to download a paid or free edition of Visual Studio from https://www.visualstudio.com/.

General information about Visual C++

What's New for Visual C++
Find out what’s new in Visual C++.

C++ conformance improvements in Visual Studio 2017
Learn about C++ conformance improvements in Visual Studio 2017.

Visual C++ language conformance
A list of conformance status by feature in Visual C++.

Visual C++ change history 2003 - 2015
Learn about the breaking changes in previous versions.

Welcome Back to C++
Learn more about modern C++ programming techniques based on C++11 and C++14 that enable you to write fast, safe code and avoid many of the pitfalls of C-style programming.

How to Report a Problem with the Visual C++ Toolset
Learn how to create effective error reports against the Visual C++ toolset (compiler, linker, and other tools), and ways to submit your report.

Visual C++ Porting and Upgrading Guide
Guidance for porting code and upgrading projects to Visual C++ in Visual Studio 2017, including porting C++ code to Windows 10 and the Universal Windows Platform.

Visual C++ Team Blog
Learn more about new features and the latest information from the developers of Visual C++.

Visual Studio Downloads
Download Visual C++.

Visual C++ Tools and Features in Visual Studio Editions
Find out about different Visual Studio editions.

Supported Platforms
Find out which platforms are supported.

Visual C++ Samples
Information about samples.

Visual Studio Community
Find out how to get help, file bugs, and make suggestions for Visual Studio.

Writing applications in C++

Universal Windows Apps
Find guides and reference content on the Windows Developer Center. For information about developing Windows Store apps, see Develop Windows Store apps using Visual Studio and Roadmap for Windows Store apps using C++.

Desktop Applications (Visual C++)
Learn how to create desktop applications that have a message loop and callbacks.

DLLs in Visual C++
Find out how to use Win32, ATL, and MFC to create Windows desktop DLLs, and provides information about how to compile and register your DLL.

Parallel Programming
Learn how to use the Parallel Patterns Library, C++ AMP, OpenMP, and other features that are related to multithreading on Windows.

Security Best Practices
Learn how to protect applications from malicious code and unauthorized use.

Cloud and Web Programming
In C++, you have several options for connecting to the web and the cloud.

Data Access
Connect to databases using ODBC and other database access technologies.

Text and Strings
Learn about working with different text and string formats and encodings for local and international development.

C++ development tools

To find out about how to create projects, work with source code files, link to libraries, compile, debug, profile, deploy, and more, see IDE and Development Tools.

C++ language reference

For information about the C++ language, see C++ Language Reference.

For information about the C++ preprocessor, see C/C++ Preprocessor Reference.

C++ Libraries in Visual Studio

The following sections provide information about the different C++ libraries that are included with Visual C++.

C Run-Time Library Reference
Includes security-enhanced alternatives to functions that are known to pose security issues.

C++ Standard Library
The C++ Standard Library.

Active Template Library (ATL)
Support for COM components and apps.

Microsoft Foundation Class (MFC) libraries
Support for creating desktop apps that have traditional or Office-style user interfaces.

Parallel Patterns Library (PPL)
Asynchronous and parallel algorithms that execute on the CPU.

C++ AMP (C++ Accelerated Massive Parallelism)
Massively parallel algorithms that execute on the GPU.

Windows Runtime Template Library (WRL)
Windows 8.x Store apps and components.

.NET Programming with C++/CLI (Visual C++)
Programming for the common language runtime (CLR).

See also the documentation for STL/CLR and the C++ Support Library.

Other C++ libraries

This section contains links to libraries that are not included with Visual Studio, but can be downloaded and used with Visual C++.

Boost
A popular and widely-used library.

C++ REST SDK.
A Microsoft library for communicating with web services over HTTP.

More resources

Visual C++ Resources
More Visual C++ resources.

Standard C++
Learn about C++, get an overview of Modern C++, and find links to books, articles, talks, and events

Learn Visual C++
Start learning C++.

See also

C Language Reference
C Run-Time Library Reference
Compiler Intrinsics and Assembly Language