Skip to content

Commit e4d2f71

Browse files
Merging changes synced from https://github.com/Microsoft/vcppdocs (branch live)
2 parents 04fd7eb + 9e90ef2 commit e4d2f71

File tree

101 files changed

+1924
-586
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

101 files changed

+1924
-586
lines changed

docs/_breadcrumb/toc.yml

Lines changed: 13 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -86,19 +86,7 @@
8686
- name: Building
8787
tocHref: /cpp/build/
8888
tocHref: /cpp/build/building-c-cpp-programs
89-
- name: Compiler Intrinsics and Assembly Language
90-
tocHref: /cpp/intrinsics/
91-
topicHref: /cpp/intrinsics/compiler-intrinsics-and-assembly-language
9289
items:
93-
- name: ARM
94-
tocHref: /cpp/assembler/arm/
95-
topicHref: /cpp/assembler/arm/arm-assembler-reference
96-
- name: Inline assembler
97-
tocHref: /cpp/assembler/inline/
98-
topicHref: /cpp/assembler/inline-assembler-reference
99-
- name: MASM
100-
tocHref: /cpp/assembler/masm/
101-
topicHref: /cpp/assembler/masm/microsoft-macro-assembler-reference
10290
- name: Build Reference
10391
tocHref: /cpp/build/reference/
10492
topicHref: /cpp/build/reference/c-cpp-building-reference
@@ -112,6 +100,19 @@
112100
- name: Other Tools
113101
tocHref: /cpp/error-messages/tool-errors/
114102
topicHref: /cpp/error-messages/tool-errors/vectorizer-and-parallelizer-messages
103+
- name: Compiler Intrinsics and Assembly Language
104+
tocHref: /cpp/intrinsics/
105+
topicHref: /cpp/intrinsics/compiler-intrinsics-and-assembly-language
106+
items:
107+
- name: ARM
108+
tocHref: /cpp/assembler/arm/
109+
topicHref: /cpp/assembler/arm/arm-assembler-reference
110+
- name: Inline assembler
111+
tocHref: /cpp/assembler/inline/
112+
topicHref: /cpp/assembler/inline-assembler-reference
113+
- name: MASM
114+
tocHref: /cpp/assembler/masm/
115+
topicHref: /cpp/assembler/masm/microsoft-macro-assembler-reference
115116
- name: Porting and Upgrading
116117
tocHref: /cpp/porting/
117118
topicHref: /cpp/porting/visual-cpp-porting-and-upgrading-guide

docs/assembler/masm/microsoft-macro-assembler-reference.md

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -64,9 +64,6 @@ The Microsoft Macro Assembler (MASM) provides several advantages over inline ass
6464
[Visual C++](../../top/visual-cpp-in-visual-studio.md)
6565
Provides links to different areas of the Visual Studio and Visual C++ documentation.
6666

67-
[Visual C++ Reference](http://msdn.microsoft.com/en-us/1ba03b5c-8229-4f63-b08c-6c12141d6ab1)
68-
Provides links to articles that describe the C and C++ language references, the libraries that are included with Visual C++, and the Visual C++ Extensibility Object Model.
69-
7067
## See Also
7168
[Compiler Intrinsics](../../intrinsics/compiler-intrinsics.md)
7269
[x86Intrinsics](../../intrinsics/x86-intrinsics-list.md)

docs/atl-mfc-shared/exporting-string-classes-using-cstringt.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ In the past, MFC developers have derived from `CString` to specialize their own
3939

4040
- With the new `CStringT` template class, you can customize `CString` behavior using template parameters that specify character traits, similar to the templates in the C++ Standard Library.
4141

42-
- When you export your own string class from a DLL using `CStringT`, the compiler also automatically exports the `CString` base class. Since `CString` is itself a template class, it may be instantiated by the compiler when used, unless the compiler is aware that `CString` is imported from a DLL. If you have migrated projects from Visual C++ 6.0 to Visual C++.NET, you might have seen linker symbol errors for a multiply-defined `CString` because of the collision of the `CString` imported from a DLL and the locally instantiated version. The proper way to do this is described below. For more information on this issue, see the Knowledge Base article, "Linking Errors When you Import CString-derived Classes" (Q309801) on the MSDN Library CD-ROM or at [http://support.microsoft.com/default.aspx](http://support.microsoft.com/default.aspx).
42+
- When you export your own string class from a DLL using `CStringT`, the compiler also automatically exports the `CString` base class. Since `CString` is itself a template class, it may be instantiated by the compiler when used, unless the compiler is aware that `CString` is imported from a DLL. If you have migrated projects from Visual C++ 6.0 to Visual C++.NET, you might have seen linker symbol errors for a multiply-defined `CString` because of the collision of the `CString` imported from a DLL and the locally instantiated version. The proper way to do this is described below. For more information on this issue, see the Knowledge Base article, "Linking Errors When you Import CString-derived Classes" (Q309801) at [http://support.microsoft.com/default.aspx](http://support.microsoft.com/default.aspx).
4343

4444
The following scenario will cause the linker to produce symbol errors for multiply defined classes. Assume that you are exporting a `CString`-derived class (`CMyString`) from an MFC extension DLL:
4545

docs/atl-mfc-shared/reference/cstringt-class.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -159,7 +159,7 @@ public CSimpleStringT<BaseType,
159159
`CString`, `CStringA`, and `CStringW` are exported from the MFC DLL (MFC90.DLL), never from user DLLs. This is done to prevent `CStringT` from being multiply defined.
160160

161161
> [!NOTE]
162-
> If you encountered linker errors when exporting a `CString`-derived class from an MFC extension DLL in Visual C++ .NET 2002 and have applied the workaround as described in the Knowledge Base article, "Linking Errors When You Import CString-Derived Classes" (Q309801), you should remove the workaround code, because this has been fixed in Visual C++ .NET 2003. You can find Knowledge Base articles on the MSDN Library CD-ROM or at [http://support.microsoft.com/support](http://support.microsoft.com/support).
162+
> If you encountered linker errors when exporting a `CString`-derived class from an MFC extension DLL in Visual C++ .NET 2002 and have applied the workaround as described in the Knowledge Base article, "Linking Errors When You Import CString-Derived Classes" (Q309801), you should remove the workaround code, because this has been fixed in Visual C++ .NET 2003. You can find Knowledge Base articles at [http://support.microsoft.com/support](http://support.microsoft.com/support).
163163
164164
The following string types are available within MFC-based applications:
165165

docs/build/how-to-modify-the-target-framework-and-platform-toolset.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ translation.priority.mt:
3939
You can change [!INCLUDE[vcprvc](../build/includes/vcprvc_md.md)] project settings to target different versions of the .NET Framework and to use different platform toolsets. By default, the project system uses the .NET Framework version and the toolset version that correspond to the version of Visual Studio that you use to create the project. You can change the target platform toolset by modifying the project properties. You can change the target Framework by modifying the project (.vcxproj) file. You do not have to maintain a separate code base for every compilation target.
4040

4141
> [!IMPORTANT]
42-
> Some editions might not support modified target Frameworks or platform toolsets. For compatibility information, see [Porting, Migrating, and Upgrading Visual Studio Projects](/visualstudio/porting/porting-migrating-and-upgrading-visual-studio-projects).
42+
> Some editions might not support modified target Frameworks or platform toolsets. For compatibility information, see [Port, Migrate, and Upgrade Visual Studio Projects](/visualstudio/porting/port-migrate-and-upgrade-visual-studio-projects).
4343
4444
When you change the target Framework, also change the platform toolset to a version that supports that Framework. For example, to target the .NET Framework 4.5, you must use a compatible platform toolset such as Visual Studio 2015 (v140), Visual Studio 2013 (v120) or Visual Studio 2012 (v110). You can use the **Windows7.1SDK** platform toolset to target the .NET Framework 2.0, 3.0, 3.5, and 4, and the x86, Itanium, and x64 platforms.
4545

docs/build/reference/calculating-necessary-values.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -62,4 +62,4 @@ CountOfImports(PCImgThunkData pitdBase) {
6262
```
6363

6464
## See Also
65-
[Understanding the Helper Function](http://msdn.microsoft.com/en-us/6279c12c-d908-4967-b0b3-cabfc3e91d3d)
65+
[Understanding the Helper Function](understanding-the-helper-function.md)

docs/build/reference/changes-in-the-dll-delayed-loading-helper-function-since-visual-cpp-6-0.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -71,4 +71,4 @@ If you have multiple versions of Visual C++ on your computer or if you defined y
7171
The linker can load all imports from a DLL that you specified to be delay loaded. See [Loading All Imports for a Delay-Loaded DLL](../../build/reference/loading-all-imports-for-a-delay-loaded-dll.md) for more information.
7272

7373
## See Also
74-
[Understanding the Helper Function](http://msdn.microsoft.com/en-us/6279c12c-d908-4967-b0b3-cabfc3e91d3d)
74+
[Understanding the Helper Function](understanding-the-helper-function.md)

docs/build/reference/delaysign-partially-sign-an-assembly.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@ translation.priority.ht:
5757

5858
For example, using **/DELAYSIGN** allows a tester to put the assembly in the global cache. After testing, you can fully sign the assembly by placing the private key in the assembly.
5959

60-
See [Strong Name Assemblies (Assembly Signing) (C++/CLI)](../../dotnet/strong-name-assemblies-assembly-signing-cpp-cli.md) and [Delay Signing an Assembly](http://msdn.microsoft.com/Library/9d300e17-5bf1-4360-97da-2aa55efd9070) for more information on signing an assembly.
60+
See [Strong Name Assemblies (Assembly Signing) (C++/CLI)](../../dotnet/strong-name-assemblies-assembly-signing-cpp-cli.md) and [Delay Signing an Assembly](/dotnet/framework/app-domains/delay-sign-assembly) for more information on signing an assembly.
6161

6262
Other linker options that affect assembly generation are:
6363

docs/build/reference/error-handling-and-notification.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ translation.priority.ht:
3333
- "zh-tw"
3434
---
3535
# Error Handling and Notification
36-
For more information on error handling and notification, see [Understanding the Helper Function](http://msdn.microsoft.com/en-us/6279c12c-d908-4967-b0b3-cabfc3e91d3d).
36+
For more information on error handling and notification, see [Understanding the Helper Function](understanding-the-helper-function.md).
3737

3838
For more information on hook functions, see [Structure and Constant Definitions](../../build/reference/structure-and-constant-definitions.md).
3939

docs/build/reference/fu-name-forced-hash-using-file.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@ A compiler option that you can use as an alternative to passing a file name to [
5656

5757
If you are using [!INCLUDE[cppcli](../../build/reference/includes/cppcli_md.md)] and are referencing metadata to use the [Friend Assemblies](../../dotnet/friend-assemblies-cpp.md) feature, you can't use **/FU**. You must reference the metadata in code by using `#using`—together with the `[as friend]` attribute. Friend assemblies are not supported in [!INCLUDE[cppwrt](../../build/reference/includes/cppwrt_md.md)] ([!INCLUDE[cppwrt_short](../../build/reference/includes/cppwrt_short_md.md)]).
5858

59-
For information about how to create an assembly or module for the common language runtime (CLR), see [/clr (Common Language Runtime Compilation)](../../build/reference/clr-common-language-runtime-compilation.md). For information about how to build in [!INCLUDE[cppwrt_short](../../build/reference/includes/cppwrt_short_md.md)], see [Building apps and libraries](http://msdn.microsoft.com/Library/ec2821a5-3479-4e64-9c2d-c777049f2cdc).
59+
For information about how to create an assembly or module for the common language runtime (CLR), see [/clr (Common Language Runtime Compilation)](../../build/reference/clr-common-language-runtime-compilation.md). For information about how to build in [!INCLUDE[cppwrt_short](../../build/reference/includes/cppwrt_short_md.md)], see [Building apps and libraries](../../cppcx/building-apps-and-libraries-c-cx.md).
6060

6161
### To set this compiler option in the Visual Studio development environment
6262

docs/build/reference/linker-support-for-delay-loaded-dlls.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,7 @@ The Visual C++ linker now supports the delayed loading of DLLs. This relieves yo
6565

6666
- [Constraints of Delay Loading DLLs](../../build/reference/constraints-of-delay-loading-dlls.md)
6767

68-
- [Understanding the Helper Function](http://msdn.microsoft.com/en-us/6279c12c-d908-4967-b0b3-cabfc3e91d3d)
68+
- [Understanding the Helper Function](understanding-the-helper-function.md)
6969

7070
- [Developing Your Own Helper Function](../../build/reference/developing-your-own-helper-function.md)
7171

docs/build/reference/unloading-a-delay-loaded-dll.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -80,4 +80,4 @@ __FUnloadDelayLoadedDLL2("User32.DLL");.
8080
```
8181

8282
## See Also
83-
[Understanding the Helper Function](http://msdn.microsoft.com/en-us/6279c12c-d908-4967-b0b3-cabfc3e91d3d)
83+
[Understanding the Helper Function](understanding-the-helper-function.md)

docs/build/reference/z7-zi-zi-debug-information-format.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -83,7 +83,7 @@ Select the type of debugging information created for your program and whether th
8383

8484
You can use [/Gm (Enable Minimal Rebuild)](../../build/reference/gm-enable-minimal-rebuild.md) with **/Zi**, whereas **/Gm** is not available when compiling with **/Z7**.
8585

86-
When compiling with **/Zi** and **/clr**, the <xref:System.Diagnostics.DebuggableAttribute> attribute will not be placed in the assembly metadata; you must specify it in source code, if you want it. This attribute can affect the runtime performance of the application. For more information about how the Debuggable attribute affects performance and how you can modify the performance impact, see [Making an Image Easier to Debug](http://msdn.microsoft.com/Library/7d90ea7a-150f-4f97-98a7-f9c26541b9a3).
86+
When compiling with **/Zi** and **/clr**, the <xref:System.Diagnostics.DebuggableAttribute> attribute will not be placed in the assembly metadata; you must specify it in source code, if you want it. This attribute can affect the runtime performance of the application. For more information about how the Debuggable attribute affects performance and how you can modify the performance impact, see [Making an Image Easier to Debug](/dotnet/framework/debug-trace-profile/making-an-image-easier-to-debug).
8787

8888
**/ZI**
8989
Produces a program database, as described above, in a format that supports the Edit and Continue feature. If you want to use Edit and Continue debugging, you must use this option. Because most optimizations are incompatible with Edit and Continue, using **/ZI** disables any `#pragma optimize` statements in your code.

docs/build/walkthrough-compiling-a-cpp-cx-program-on-the-command-line.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,7 @@ You can create Visual C++ programs that target the Windows Runtime and build the
6868

6969
4. On the menu bar, choose **File**, **Save**.
7070

71-
You have created a Visual C++ source file that uses the Windows Runtime [Platform namespace](http://msdn.microsoft.com/Library/b160e822-d424-43d2-ba60-57b0e81f259c) namespace.
71+
You have created a Visual C++ source file that uses the Windows Runtime [Platform namespace](../cppcx/platform-namespace-c-cx.md) namespace.
7272

7373
5. At the command prompt, enter **cl /EHsc /ZW basiccx.cpp /link /SUBSYSTEM:CONSOLE**. The cl.exe compiler compiles the source code into an .obj file, and then runs the linker to generate an executable program named basiccx.exe. (The [/EHsc](../build/reference/eh-exception-handling-model.md) compiler option specifies the C++ exception-handling model, and the [/link](../build/reference/link-pass-options-to-linker.md) flag specifies a console application.)
7474

docs/c-runtime-library/ismbb-routines.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,7 @@ Tests the given integer value `c` for a particular condition, by using the curre
6868
|Routine|Byte test condition|
6969
|-------------|-------------------------|
7070
|[_ismbbalnum](../c-runtime-library/reference/ismbbalnum-ismbbalnum-l.md)|`isalnum` &#124;&#124; `_ismbbkalnum`.|
71-
|[_ismbbalpha](http://msdn.microsoft.com/en-us/8e54cb92-fc2b-41f5-8ab4-b22ac8aa9ad0)|`isalpha` &#124;&#124; `_ismbbkalnum`.|
71+
|[_ismbbalpha](reference/ismbbalpha-ismbbalpha-l.md)|`isalpha` &#124;&#124; `_ismbbkalnum`.|
7272
|[_ismbbblank](../c-runtime-library/reference/ismbbblank-ismbbblank-l.md)|`isblank`|
7373
|[_ismbbgraph](../c-runtime-library/reference/ismbbgraph-ismbbgraph-l.md)|Same as `_ismbbprint`, but `_ismbbgraph` does not include the space character (0x20).|
7474
|[_ismbbkalnum](../c-runtime-library/reference/ismbbkalnum-ismbbkalnum-l.md)|Non-ASCII text symbol other than punctuation. For example, in code page 932 only, `_ismbbkalnum` tests for katakana alphanumeric.|

docs/c-runtime-library/pctype-pwctype-wctype-mbctype-mbcasemap.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,7 @@ extern unsigned char _mbcasemap[];
6868
## Remarks
6969
The information in `_pctype`, `_pwctype`, and `_wctype` is used internally by functions [isupper, _isupper_l, iswupper, _iswupper_l](../c-runtime-library/reference/isupper-isupper-l-iswupper-iswupper-l.md), [islower, iswlower, _islower_l, _iswlower_l](../c-runtime-library/reference/islower-iswlower-islower-l-iswlower-l.md), [isdigit, iswdigit, _isdigit_l, _iswdigit_l](../c-runtime-library/reference/isdigit-iswdigit-isdigit-l-iswdigit-l.md), [isxdigit, iswxdigit, _isxdigit_l, _iswxdigit_l](../c-runtime-library/reference/isxdigit-iswxdigit-isxdigit-l-iswxdigit-l.md), [isspace, iswspace, _isspace_l, _iswspace_l](../c-runtime-library/reference/isspace-iswspace-isspace-l-iswspace-l.md), [isalnum, iswalnum, _isalnum_l, _iswalnum_l](../c-runtime-library/reference/isalnum-iswalnum-isalnum-l-iswalnum-l.md), [ispunct, iswpunct, _ispunct_l, _iswpunct_l](../c-runtime-library/reference/ispunct-iswpunct-ispunct-l-iswpunct-l.md), [isgraph, iswgraph, _isgraph_l, _iswgraph_l](../c-runtime-library/reference/isgraph-iswgraph-isgraph-l-iswgraph-l.md), and [iscntrl, iswcntrl, _iscntrl_l, _iswcntrl_l](../c-runtime-library/reference/iscntrl-iswcntrl-iscntrl-l-iswcntrl-l.md), as well as the [toupper, _toupper, towupper, _toupper_l, _towupper_l](../c-runtime-library/reference/toupper-toupper-towupper-toupper-l-towupper-l.md) and [tolower, _tolower, towlower, _tolower_l, _towlower_l](../c-runtime-library/reference/tolower-tolower-towlower-tolower-l-towlower-l.md) functions. These functions should be used instead of accessing these global variables.
7070

71-
The information in `_mbctype` and `_mbcasemap` is used internally by [_ismbbkalnum, _ismbbkalnum_l](../c-runtime-library/reference/ismbbkalnum-ismbbkalnum-l.md), [_ismbbkana, _ismbbkana_l](../c-runtime-library/reference/ismbbkana-ismbbkana-l.md), [_ismbbkpunct, _ismbbkpunct_l](../c-runtime-library/reference/ismbbkpunct-ismbbkpunct-l.md), [_ismbbkprint, _ismbbkprint_l](../c-runtime-library/reference/ismbbkprint-ismbbkprint-l.md), [_ismbbalpha](http://msdn.microsoft.com/en-us/8e54cb92-fc2b-41f5-8ab4-b22ac8aa9ad0), [_ismbbpunct, _ismbbpunct_l](../c-runtime-library/reference/ismbbpunct-ismbbpunct-l.md), [_ismbbalnum, _ismbbalnum_l](../c-runtime-library/reference/ismbbalnum-ismbbalnum-l.md), [_ismbbprint, _ismbbprint_l](../c-runtime-library/reference/ismbbprint-ismbbprint-l.md), [_ismbbgraph, _ismbbgraph_l](../c-runtime-library/reference/ismbbgraph-ismbbgraph-l.md), [_ismbblead, _ismbblead_l](../c-runtime-library/reference/ismbblead-ismbblead-l.md), [_ismbbtrail, _ismbbtrail_l](../c-runtime-library/reference/ismbbtrail-ismbbtrail-l.md), [_ismbslead, _ismbstrail, _ismbslead_l, _ismbstrail_l](../c-runtime-library/reference/ismbslead-ismbstrail-ismbslead-l-ismbstrail-l.md), and [_ismbslead, _ismbstrail, _ismbslead_l, _ismbstrail_l](../c-runtime-library/reference/ismbslead-ismbstrail-ismbslead-l-ismbstrail-l.md). Use these functions instead of accessing the global variables.
71+
The information in `_mbctype` and `_mbcasemap` is used internally by [_ismbbkalnum, _ismbbkalnum_l](../c-runtime-library/reference/ismbbkalnum-ismbbkalnum-l.md), [_ismbbkana, _ismbbkana_l](../c-runtime-library/reference/ismbbkana-ismbbkana-l.md), [_ismbbkpunct, _ismbbkpunct_l](../c-runtime-library/reference/ismbbkpunct-ismbbkpunct-l.md), [_ismbbkprint, _ismbbkprint_l](../c-runtime-library/reference/ismbbkprint-ismbbkprint-l.md), [_ismbbalpha](reference/ismbbalpha-ismbbalpha-l.md), [_ismbbpunct, _ismbbpunct_l](../c-runtime-library/reference/ismbbpunct-ismbbpunct-l.md), [_ismbbalnum, _ismbbalnum_l](../c-runtime-library/reference/ismbbalnum-ismbbalnum-l.md), [_ismbbprint, _ismbbprint_l](../c-runtime-library/reference/ismbbprint-ismbbprint-l.md), [_ismbbgraph, _ismbbgraph_l](../c-runtime-library/reference/ismbbgraph-ismbbgraph-l.md), [_ismbblead, _ismbblead_l](../c-runtime-library/reference/ismbblead-ismbblead-l.md), [_ismbbtrail, _ismbbtrail_l](../c-runtime-library/reference/ismbbtrail-ismbbtrail-l.md), [_ismbslead, _ismbstrail, _ismbslead_l, _ismbstrail_l](../c-runtime-library/reference/ismbslead-ismbstrail-ismbslead-l-ismbstrail-l.md), and [_ismbslead, _ismbstrail, _ismbslead_l, _ismbstrail_l](../c-runtime-library/reference/ismbslead-ismbstrail-ismbslead-l-ismbstrail-l.md). Use these functions instead of accessing the global variables.
7272

7373
## Requirements
7474
Not for public use.

0 commit comments

Comments
 (0)