Skip to content

Commit

Permalink
Merge pull request #2772 from MicrosoftDocs/master
Browse files Browse the repository at this point in the history
3/30/2020 AM Publish
  • Loading branch information
Taojunshen committed Mar 30, 2020
2 parents 090425b + 0329954 commit 951a5b9
Show file tree
Hide file tree
Showing 11 changed files with 33 additions and 33 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ During the parsing of the script, the Registrar expands `'%MODULE%, 1'` to `c:\m
> [!NOTE]
> When building a project that outputs an executable, ATL automatically adds quotation marks around the path name created at run time with the **%MODULE%** registrar script parameter. If you do not want the path name to include the quotation marks, use the new **%MODULE_RAW%** parameter instead.
>
> When building a project that outputs a DLL, ATL will not add quotation marks to the path name if **%MODULE%** or **%MODULE_RAW%** is used.
> When building a project that outputs a DLL, ATL will not add quotation marks to the path name if **%MODULE%** or **%MODULE_RAW%** is used.
## See also

Expand Down
2 changes: 1 addition & 1 deletion docs/c-runtime-library/obsolete-functions.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
title: "Obsolete functions"
description: "Lists the obsolete functions that have been deprecated and removed from the Microsoft C runtime library (CRT)."
ms.date: "12/09/2019"
api_name: ["_beep", "_sleep", "_loaddll", "_getdllprocaddr", "_seterrormode", "is_wctype", "_getsystime", "_setsystime"]
api_name: ["_beep", "_sleep", "_loaddll", "_getdllprocaddr", "_seterrormode", "is_wctype", "_getsystime", "_setsystime", "_unloaddll"]
api_location: ["msvcrt.dll", "msvcr80.dll", "msvcr90.dll", "msvcr100.dll", "msvcr100_clr0400.dll", "msvcr110.dll", "msvcr110_clr0400.dll", "msvcr120.dll", "msvcr120_clr0400.dll", "ucrtbase.dll", "api-ms-win-crt-process-l1-1-0.dll", "api-ms-win-crt-runtime-l1-1-0.dll", "api-ms-win-crt-string-l1-1-0.dll", "api-ms-win-crt-time-l1-1-0.dll"]
api_type: ["DLLExport"]
topic_type: ["apiref"]
Expand Down
2 changes: 1 addition & 1 deletion docs/c-runtime-library/reference/findnext-functions.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
---
title: "_findnext, _findnext32, _findnext32i64, _findnext64, _findnext64i32, _findnexti64, _wfindnext, _wfindnext32, _wfindnext32i64, _wfindnext64, _wfindnext64i32, _wfindnexti64"
ms.date: "11/04/2016"
api_name: ["_wfindnext", "_findnext"]
api_name: ["_findnext, _findnext32, _findnext32i64, _findnext64, _findnext64i32, _findnexti64, _wfindnext, _wfindnext32, _wfindnext32i64, _wfindnext64, _wfindnext64i32, _wfindnexti64"]
api_location: ["msvcrt.dll", "msvcr80.dll", "msvcr90.dll", "msvcr100.dll", "msvcr100_clr0400.dll", "msvcr110.dll", "msvcr110_clr0400.dll", "msvcr120.dll", "msvcr120_clr0400.dll", "ucrtbase.dll", "api-ms-win-crt-filesystem-l1-1-0.dll"]
api_type: ["DLLExport"]
topic_type: ["apiref"]
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
---
title: "logb, logbf, logbl, _logb, _logbf"
ms.date: "04/05/2018"
api_name: ["logb", "_logb", "_logbl", "logbf", "logbl"]
api_name: ["logb", "_logb", "_logbl", "logbf", "_logbf", "logbl"]
api_location: ["msvcrt.dll", "msvcr80.dll", "msvcr90.dll", "msvcr100.dll", "msvcr100_clr0400.dll", "msvcr110.dll", "msvcr110_clr0400.dll", "msvcr120.dll", "msvcr120_clr0400.dll", "ucrtbase.dll", "api-ms-win-crt-math-l1-1-0.dll"]
api_type: ["DLLExport"]
topic_type: ["apiref"]
Expand Down
2 changes: 1 addition & 1 deletion docs/c-runtime-library/reference/sinh-sinhf-sinhl.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
---
title: "sinh, sinhf, sinhl"
ms.date: "04/10/2018"
api_name: ["sinhl", "sinhf", "sinhl"]
api_name: ["sinh", "sinhl", "sinhf", "sinhl"]
api_location: ["msvcrt.dll", "msvcr80.dll", "msvcr90.dll", "msvcr100.dll", "msvcr100_clr0400.dll", "msvcr110.dll", "msvcr110_clr0400.dll", "msvcr120.dll", "msvcr120_clr0400.dll", "ucrtbase.dll", "api-ms-win-crt-math-l1-1-0.dll"]
api_type: ["DLLExport"]
topic_type: ["apiref"]
Expand Down
8 changes: 4 additions & 4 deletions docs/code-quality/c26432.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ ms.assetid: f587b05a-5c69-4176-baa6-fcb79d228b24
**C++ Core Guidelines**:
[C.21: If you define or =delete any default operation, define or =delete them all](https://isocpp.github.io/CppCoreGuidelines/CppCoreGuidelines#c21-if-you-define-or-delete-any-default-operation-define-or-delete-them-all)

Special operations like constructors are assumed to alter behavior of types so that they rely more on language mechanisms to automatically enforce specific scenarios (the canonical example is resource management). If any of these operations is explicitly defined, defaulted or deleted (as an indication that user wants to avoid any special handling of a type) it would be inconsistent to leave the other operations from the same group unspecified (i.e. implicitly defined by compiler).
Special operations like constructors are assumed to alter behavior of types so that they rely more on language mechanisms to automatically enforce specific scenarios. The canonical example is resource management. If you explicitly define, default, or delete any of these special operations, it signals you want to avoid any special handling of a type. It's inconsistent to leave the other operations unspecified, that is, implicitly defined as deleted by the compiler.

## Remarks

Expand All @@ -22,7 +22,7 @@ Special operations like constructors are assumed to alter behavior of types so t
- move constructors;
- copy assignment operators;
- move assignment operators;
- destructors;
- The rule doesn't check if operations are defined in the same way, i.e. it is okay to mix deleted and defaulted operations with explicitly defined, but they all must be specified somehow if any of them appears.
- Access levels are not important and can also be mixed.
- destructors.
- The rule doesn't check if operations are defined in the same way. It's okay to mix deleted and defaulted operations with explicitly defined ones. However, you must specify all of them if you specify any of them.
- Access levels aren't important and can also be mixed.
- The warning flags the first non-static function definition of a type, once per type.
6 changes: 3 additions & 3 deletions docs/cpp/namespaces-cpp.md
Original file line number Diff line number Diff line change
Expand Up @@ -56,7 +56,7 @@ The **using** directive allows all the names in a **namespace** to be used witho
> [!NOTE]
> A using directive can be placed at the top of a .cpp file (at file scope), or inside a class or function definition.
>
> In general, avoid putting using directives in header files (*.h) because any file that includes that header will bring everything in the namespace into scope, which can cause name hiding and name collision problems that are very difficult to debug. Always use fully qualified names in a header file. If those names get too long, you can use a namespace alias to shorten them. (See below.)
> In general, avoid putting using directives in header files (*.h) because any file that includes that header will bring everything in the namespace into scope, which can cause name hiding and name collision problems that are very difficult to debug. Always use fully qualified names in a header file. If those names get too long, you can use a namespace alias to shorten them. (See below.)
## Declaring namespaces and namespace members
Expand Down Expand Up @@ -118,7 +118,7 @@ All C++ standard library types and functions are declared in the `std` namespace

## Nested namespaces

Namespaces may be nested. An ordinary nested namespace has unqualified access to its parents members, but the parent members do not have unqualified access to the nested namespace (unless it is declared as inline), as shown in the following example:
Namespaces may be nested. An ordinary nested namespace has unqualified access to its parent's members, but the parent members do not have unqualified access to the nested namespace (unless it is declared as inline), as shown in the following example:

```cpp
namespace ContosoDataServer
Expand Down Expand Up @@ -234,7 +234,7 @@ namespace Contoso
## <a id="namespace_aliases"></a> Namespace aliases
Namespace names need to be unique, which means that often they should not be too short. If the length of a name makes code difficult to read, or is tedious to type in a header file where using directives cant be used, then you can make a namespace alias which serves as an abbreviation for the actual name. For example:
Namespace names need to be unique, which means that often they should not be too short. If the length of a name makes code difficult to read, or is tedious to type in a header file where using directives can't be used, then you can make a namespace alias which serves as an abbreviation for the actual name. For example:
```cpp
namespace a_very_long_namespace_name { class Foo {}; }
Expand Down
2 changes: 1 addition & 1 deletion docs/cpp/pointers-to-members.md
Original file line number Diff line number Diff line change
Expand Up @@ -68,7 +68,7 @@ int main()
}
```
In the preceding example, `pwCaption` is a pointer to any member of class `Window` that's of type `char*`. The type of `pwCaption` is `char * Window::* `. The next code fragment declares pointers to the `SetCaption` and `GetCaption` member functions.
In the preceding example, `pwCaption` is a pointer to any member of class `Window` that's of type `char*`. The type of `pwCaption` is `char * Window::*`. The next code fragment declares pointers to the `SetCaption` and `GetCaption` member functions.
```cpp
const char * (Window::*pfnwGC)() = &Window::GetCaption;
Expand Down
9 changes: 5 additions & 4 deletions docs/mfc/dynamic-object-creation.md
Original file line number Diff line number Diff line change
@@ -1,19 +1,20 @@
---
title: "Dynamic Object Creation"
ms.date: "11/04/2016"
ms.date: "03/27/2020"
helpviewer_keywords: ["object creation [MFC], dynamically at run time", "CObject class [MFC], dynamic object creation", "objects [MFC], creating dynamically at run time", "dynamic object creation [MFC]"]
ms.assetid: 3e0f51cb-3e24-4231-817f-1c0ce9f2d5df
---
# Dynamic Object Creation

This article explains how to create an object dynamically at run time. The procedure uses run-time class information, as discussed in the article [Accessing Run-Time Class Information](../mfc/accessing-run-time-class-information.md).

#### To dynamically create an object given its run-time class
#### Dynamically create an object given its run-time class

1. Use the following code to dynamically create an object by using the `CreateObject` function of the `CRuntimeClass`. Note that on failure, `CreateObject` returns **NULL** instead of raising an exception:
1. Use the following code to dynamically create an object using the `CreateObject` function of the `CRuntimeClass`. On failure, `CreateObject` returns **NULL** instead of raising an exception:

[!code-cpp[NVC_MFCCObjectSample#6](../mfc/codesnippet/cpp/dynamic-object-creation_1.cpp)]

## See also

[Using CObject](../mfc/using-cobject.md)
[Destroying Window Objects](tn017-destroying-window-objects.md)
[Using CObject](using-cobject.md)
2 changes: 1 addition & 1 deletion docs/mfc/mfc-desktop-applications.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ Public and protected class members are documented only when they are normally us
> [!IMPORTANT]
> The MFC classes and their members cannot be used in applications that execute in the Windows Runtime environment.
>
> MFC libraries (DLLs) for multibyte character encoding (MBCS) are no longer included in Visual Studio, but are available as a Visual Studio add-on. For more information, see [MFC MBCS DLL Add-on](mfc-mbcs-dll-add-on.md).
> MFC libraries (DLLs) for multibyte character encoding (MBCS) are no longer included in Visual Studio, but are available as a Visual Studio add-on. For more information, see [MFC MBCS DLL Add-on](mfc-mbcs-dll-add-on.md).
## In This Section

Expand Down
Loading

0 comments on commit 951a5b9

Please sign in to comment.