Skip to content

Commit d2260b4

Browse files
committed
Feedback changes
1 parent 4a5e491 commit d2260b4

File tree

3 files changed

+14
-10
lines changed

3 files changed

+14
-10
lines changed
13.7 KB
Loading

docs/build/working-with-project-properties.md

Lines changed: 12 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
---
2-
title: "Set C++ compiler and build properties in Visual Studio"
3-
description: "Use the Visual Studio IDE to Change C++ Compiler and Linker Options and Other Build Settings."
2+
title: "Set C++ Compiler and Build Properties in Visual Studio"
3+
description: "Use the Visual Studio IDE to change C++ compiler and linker options and other build settings."
44
ms.date: 03/19/2025
55
ms.topic: concept-article
66
helpviewer_keywords: ["project properties [C++], modifying", "properties [C++]", "Visual C++ projects, properties", "projects [C++], properties"]
@@ -13,15 +13,13 @@ You can view and modify these properties by using *property pages*. To access th
1313

1414
## Default properties
1515

16-
When you create a project, the system assigns values for various properties. The defaults vary somewhat depending on the kind of project and what options you choose in the app wizard. For example, an active template library (ATL) project has properties related to Microsoft Interface Definition Language (MIDL) files, but these properties are absent in a basic console application. The default properties are shown in the General pane in the **Property Pages** window:
16+
When you create a project, the system assigns values for various properties. The defaults vary somewhat depending on the kind of project and what options you choose in the app wizard. For example, an Active Template Library (ATL) project has properties related to Microsoft Interface Definition Language (MIDL) files, but these properties are absent in a basic console application. The default properties are shown in the Advanced pane in the **Property Pages** window:
1717

18-
:::image type="complex" source="media/visual-c---project-defaults.png" alt-text="Screenshot of the Visual Studio project properties dialog.":::
19-
The General page is open. The Project Defaults section is highlighted, which includes Configuration Type set to Application (.exe), use of MFC set to Use standard Windows libraries, Character set is Unicode, Common Language Runtime Support is set to No Common Language Runtime Support, Whole Program optimization is set to No Whole Program Optimization, and Windows Store APP support is set to No.
20-
:::image-end:::
18+
:::image type="content" source="media/visual-c---project-defaults.png" alt-text="Screenshot of the Visual Studio project properties dialog box with the Advanced pane selected." lightbox="media/visual-c---project-defaults.png":::
2119

2220
## Apply properties to build configurations and target platforms
2321

24-
Some properties, such as the application name, apply to all build variations and target platforms, whether it's a debug or release build. But most properties are configuration-dependent. To generate the correct code, the compiler has to know both the specific platform the program runs on and which specific compiler options to use. So when you set a property, it's important to pay attention to which configuration and platform the new value should apply to. Should it apply only to Debug Win32 builds, or should it also apply to Debug Arm64 and Debug x64? For example, the **Optimization** property, by default, is set to **Maximize Speed (/O2)** in a Release configuration, but is disabled in the Debug configuration.
22+
Some properties, such as the application name, apply to all build variations and target platforms, whether it's a debug or release build. But most properties are configuration-dependent. To generate the correct code, the compiler has to know both the specific platform the program runs on and which specific compiler options to use. So when you set a property, it's important to pay attention to which configuration and platform the new value should apply to. Should it apply only to Debug Win32 builds, or should it also apply to Debug ARM64 and Debug x64? For example, the **Optimization** property, by default, is set to **Maximize Speed (/O2)** in a Release configuration, but is disabled in the Debug configuration.
2523

2624
You can always see and change the configuration and platform a property value should apply to. The following illustration shows the property pages with the configuration and platform information controls at the top. When the **Optimization** property is set here, it only applies to Debug Win32 builds, the currently active configuration, as shown by the red arrows.
2725

@@ -35,7 +33,7 @@ The following illustration shows the same project property page, but the configu
3533

3634
## Target platforms
3735

38-
*Target platform* refers to the kind of device and operating system that the executable runs on. You can build a project for more than one platform. The available target platforms for C++ projects depend on the kind of project. They include but aren't limited to Win32, x64, ARM, Arm64, Android, and iOS. The **x86** target platform that you might see in **Configuration Manager** is identical to **Win32** in native C++ projects. Win32 means 32-bit Windows and **x64** means 64-bit Windows. For more information about these two platforms, see [Running 32-bit applications](/windows/win32/WinProg64/running-32-bit-applications).
36+
*Target platform* refers to the kind of device and operating system that the executable runs on. You can build a project for more than one platform. The available target platforms for C++ projects depend on the kind of project. They include but aren't limited to Win32, x64, ARM, ARM64, Android, and iOS. The **x86** target platform that you might see in **Configuration Manager** is identical to **Win32** in native C++ projects. Win32 means 32-bit Windows and **x64** means 64-bit Windows. For more information about these two platforms, see [Running 32-bit applications](/windows/win32/WinProg64/running-32-bit-applications).
3937

4038
The **Any CPU** target platform value that you might see in **Configuration Manager** has no effect on native C++ projects. It's only relevant for C++/CLI and other .NET project types. For more information, see [`/CLRIMAGETYPE` (Specify Type of CLR Image)](reference/clrimagetype-specify-type-of-clr-image.md).
4139

@@ -126,6 +124,12 @@ In the right pane, modify the **Environment** or **Merge Environment** project s
126124

127125
## Related content
128126

127+
**Articles in this section**
129128
- [Share or reuse Visual Studio project settings](create-reusable-property-configurations.md)
130129
- [Property inheritance in Visual Studio projects](project-property-inheritance.md)
131130
- [Modify C++ project properties and targets without changing the project file](modify-project-properties-without-changing-project-file.md)
131+
132+
**Reference articles**
133+
- [Visual Studio projects - C++](creating-and-managing-visual-cpp-projects.md)
134+
- [`.vcxproj` and `.props` file structure](reference/vcxproj-file-structure.md)
135+
- [Property Page XML rule files](reference/property-page-xml-files.md)

docs/build/x64-calling-convention.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
---
2-
title: "x64 calling convention"
3-
description: "Learn About the Default x64 Calling Convention that One Function Uses to Make Calls into Another Function."
2+
title: "x64 Calling Convention"
3+
description: "Learn about the default x64 calling convention that one function uses to make calls into another function."
44
ms.date: 03/19/2025
55
ms.topic: concept-article
66
---

0 commit comments

Comments
 (0)