Skip to content

Commit 9079800

Browse files
authored
Merge branch 'master' into mb-locfix2
2 parents a86d36e + b69bc63 commit 9079800

File tree

518 files changed

+1591
-10692
lines changed

Some content is hidden

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

518 files changed

+1591
-10692
lines changed

docs/atl-mfc-shared/allocating-and-releasing-memory-for-a-bstr.md

Lines changed: 4 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -4,40 +4,17 @@ ms.custom: ""
44
ms.date: "11/04/2016"
55
ms.reviewer: ""
66
ms.suite: ""
7-
ms.technology:
8-
- "cpp-windows"
7+
ms.technology: ["cpp-windows"]
98
ms.tgt_pltfrm: ""
109
ms.topic: "reference"
11-
f1_keywords:
12-
- "bstr"
13-
dev_langs:
14-
- "C++"
15-
helpviewer_keywords:
16-
- "BSTRs, memory allocation"
17-
- "memory deallocation, string memory"
18-
- "memory [C++], releasing"
19-
- "memory allocation, BSTRs"
20-
- "memory deallocation, BSTR memory"
21-
- "strings [C++], releasing"
10+
f1_keywords: ["bstr"]
11+
dev_langs: ["C++"]
12+
helpviewer_keywords: ["BSTRs, memory allocation", "memory deallocation, string memory", "memory [C++], releasing", "memory allocation, BSTRs", "memory deallocation, BSTR memory", "strings [C++], releasing"]
2213
ms.assetid: 98041e29-3442-4a02-b425-7a4a13e9cc84
2314
caps.latest.revision: 13
2415
author: "mikeblome"
2516
ms.author: "mblome"
2617
manager: "ghogen"
27-
translation.priority.ht:
28-
- "cs-cz"
29-
- "de-de"
30-
- "es-es"
31-
- "fr-fr"
32-
- "it-it"
33-
- "ja-jp"
34-
- "ko-kr"
35-
- "pl-pl"
36-
- "pt-br"
37-
- "ru-ru"
38-
- "tr-tr"
39-
- "zh-cn"
40-
- "zh-tw"
4118
---
4219
# Allocating and Releasing Memory for a BSTR
4320
When you create `BSTR`s and pass them between COM objects, you must take care in treating the memory they use in order to avoid memory leaks. When a `BSTR` stays within an interface, you must free its memory when you are done with it. However, when a `BSTR` passes out of an interface, the receiving object takes responsibility for its memory management.

docs/atl-mfc-shared/atl-mfc-concepts.md

Lines changed: 3 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -4,34 +4,16 @@ ms.custom: ""
44
ms.date: "11/04/2016"
55
ms.reviewer: ""
66
ms.suite: ""
7-
ms.technology:
8-
- "cpp-windows"
7+
ms.technology: ["cpp-windows"]
98
ms.tgt_pltfrm: ""
109
ms.topic: "reference"
11-
dev_langs:
12-
- "C++"
13-
helpviewer_keywords:
14-
- "MFC"
15-
- "ATL"
10+
dev_langs: ["C++"]
11+
helpviewer_keywords: ["MFC", "ATL"]
1612
ms.assetid: 4d973f56-8730-4e0b-9522-b5f43bc4548d
1713
caps.latest.revision: 7
1814
author: "mikeblome"
1915
ms.author: "mblome"
2016
manager: "ghogen"
21-
translation.priority.ht:
22-
- "cs-cz"
23-
- "de-de"
24-
- "es-es"
25-
- "fr-fr"
26-
- "it-it"
27-
- "ja-jp"
28-
- "ko-kr"
29-
- "pl-pl"
30-
- "pt-br"
31-
- "ru-ru"
32-
- "tr-tr"
33-
- "zh-cn"
34-
- "zh-tw"
3517
---
3618
# ATL/MFC Concepts
3719
This section provides conceptual and task-based topics to help you program using the classes shared between Active Template Library (ATL) and Microsoft Foundation Class (MFC) Library.

docs/atl-mfc-shared/atl-mfc-shared-classes.md

Lines changed: 4 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -4,50 +4,17 @@ ms.custom: ""
44
ms.date: "11/04/2016"
55
ms.reviewer: ""
66
ms.suite: ""
7-
ms.technology:
8-
- "cpp-windows"
7+
ms.technology: ["cpp-windows"]
98
ms.tgt_pltfrm: ""
109
ms.topic: "index-page "
11-
f1_keywords:
12-
- "vc.classes.shared"
13-
dev_langs:
14-
- "C++"
15-
helpviewer_keywords:
16-
- "CPoint class, shared class"
17-
- "CFileTimeSpan class, shared class"
18-
- "COleDateTime class, shared class"
19-
- "CFixedStringT class, shared class"
20-
- "CStrBufT class, shared class"
21-
- "CFileTime class, shared class"
22-
- "CRect class, shared class"
23-
- "CSimpleStringT class, shared class"
24-
- "CStringT class, shared class"
25-
- "CSize class, shared class"
26-
- "CStringData class, shared class"
27-
- "IAtlStringMgr class, shared class"
28-
- "shared classes, MFC and ATL"
29-
- "COleDateTimeSpan class, shared class"
30-
- "CString objects, shared class"
31-
- "shared classes"
10+
f1_keywords: ["vc.classes.shared"]
11+
dev_langs: ["C++"]
12+
helpviewer_keywords: ["CPoint class, shared class", "CFileTimeSpan class, shared class", "COleDateTime class, shared class", "CFixedStringT class, shared class", "CStrBufT class, shared class", "CFileTime class, shared class", "CRect class, shared class", "CSimpleStringT class, shared class", "CStringT class, shared class", "CSize class, shared class", "CStringData class, shared class", "IAtlStringMgr class, shared class", "shared classes, MFC and ATL", "COleDateTimeSpan class, shared class", "CString objects, shared class", "shared classes"]
3213
ms.assetid: e13aaac3-21ec-4f4d-8834-432b40fde544
3314
caps.latest.revision: 12
3415
author: "mikeblome"
3516
ms.author: "mblome"
3617
manager: "ghogen"
37-
translation.priority.ht:
38-
- "cs-cz"
39-
- "de-de"
40-
- "es-es"
41-
- "fr-fr"
42-
- "it-it"
43-
- "ja-jp"
44-
- "ko-kr"
45-
- "pl-pl"
46-
- "pt-br"
47-
- "ru-ru"
48-
- "tr-tr"
49-
- "zh-cn"
50-
- "zh-tw"
5118
---
5219
# ATL/MFC Shared Classes
5320
Beginning with Visual C++ .NET 2002, several existing MFC utility classes were rewritten or revised to reduce their dependencies on other MFC classes. These utility classes can now be used in any native C++ project. This section only includes classes that were previously available to MFC projects and have now been shared, plus a few new classes related to the changes in `CString`. It does not include the ATL classes, which can be used in any native C++ project type by inclusion of the appropriate header.

docs/atl-mfc-shared/avoidance-of-heap-contention.md

Lines changed: 3 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -4,33 +4,16 @@ ms.custom: ""
44
ms.date: "11/04/2016"
55
ms.reviewer: ""
66
ms.suite: ""
7-
ms.technology:
8-
- "cpp-windows"
7+
ms.technology: ["cpp-windows"]
98
ms.tgt_pltfrm: ""
109
ms.topic: "reference"
11-
dev_langs:
12-
- "C++"
13-
helpviewer_keywords:
14-
- "heap contention"
10+
dev_langs: ["C++"]
11+
helpviewer_keywords: ["heap contention"]
1512
ms.assetid: 797129d7-5f8c-4b0e-8974-bb93217e9ab5
1613
caps.latest.revision: 12
1714
author: "mikeblome"
1815
ms.author: "mblome"
1916
manager: "ghogen"
20-
translation.priority.ht:
21-
- "cs-cz"
22-
- "de-de"
23-
- "es-es"
24-
- "fr-fr"
25-
- "it-it"
26-
- "ja-jp"
27-
- "ko-kr"
28-
- "pl-pl"
29-
- "pt-br"
30-
- "ru-ru"
31-
- "tr-tr"
32-
- "zh-cn"
33-
- "zh-tw"
3417
---
3518
# Avoidance of Heap Contention
3619
The default string managers provided by MFC and ATL are simple wrappers on top of a global heap. This global heap is fully thread-safe, meaning that multiple threads can allocate and free memory from it simultaneously without corrupting the heap. To help provide thread safety, the heap has to serialize access to itself. This is usually accomplished with a critical section or similar locking mechanism. Whenever two threads try to access the heap simultaneously, one thread is blocked until the other thread's request is finished. For many applications, this situation rarely occurs and the performance impact of the heap's locking mechanism is negligible. However, for applications that frequently access the heap from multiple threads contention for the heap's lock can cause the application to run slower than if it were single-threaded (even on machines with multiple CPUs).

docs/atl-mfc-shared/basic-cstring-operations.md

Lines changed: 3 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -4,38 +4,16 @@ ms.custom: ""
44
ms.date: "11/04/2016"
55
ms.reviewer: ""
66
ms.suite: ""
7-
ms.technology:
8-
- "cpp-windows"
7+
ms.technology: ["cpp-windows"]
98
ms.tgt_pltfrm: ""
109
ms.topic: "reference"
11-
dev_langs:
12-
- "C++"
13-
helpviewer_keywords:
14-
- "CString objects, basic operations"
15-
- "string literals, CString operations"
16-
- "literal strings, CString operations"
17-
- "CString objects"
18-
- "string comparison, CString operations"
19-
- "characters, accessing in CStrings"
10+
dev_langs: ["C++"]
11+
helpviewer_keywords: ["CString objects, basic operations", "string literals, CString operations", "literal strings, CString operations", "CString objects", "string comparison, CString operations", "characters, accessing in CStrings"]
2012
ms.assetid: 41db66b2-9427-4bb3-845a-9b6869159a6c
2113
caps.latest.revision: 17
2214
author: "mikeblome"
2315
ms.author: "mblome"
2416
manager: "ghogen"
25-
translation.priority.ht:
26-
- "cs-cz"
27-
- "de-de"
28-
- "es-es"
29-
- "fr-fr"
30-
- "it-it"
31-
- "ja-jp"
32-
- "ko-kr"
33-
- "pl-pl"
34-
- "pt-br"
35-
- "ru-ru"
36-
- "tr-tr"
37-
- "zh-cn"
38-
- "zh-tw"
3917
---
4018
# Basic CString Operations
4119
This topic explains the following basic [CString](../atl-mfc-shared/reference/cstringt-class.md) operations:

docs/atl-mfc-shared/cfixedstringt-example-of-a-custom-string-manager.md

Lines changed: 3 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -4,33 +4,16 @@ ms.custom: ""
44
ms.date: "11/04/2016"
55
ms.reviewer: ""
66
ms.suite: ""
7-
ms.technology:
8-
- "cpp-windows"
7+
ms.technology: ["cpp-windows"]
98
ms.tgt_pltfrm: ""
109
ms.topic: "reference"
11-
dev_langs:
12-
- "C++"
13-
helpviewer_keywords:
14-
- "CFixedStringT class, using a custom string manager"
10+
dev_langs: ["C++"]
11+
helpviewer_keywords: ["CFixedStringT class, using a custom string manager"]
1512
ms.assetid: 1cf11fd7-51b8-4b94-87af-02bc25f47dd6
1613
caps.latest.revision: 11
1714
author: "mikeblome"
1815
ms.author: "mblome"
1916
manager: "ghogen"
20-
translation.priority.ht:
21-
- "cs-cz"
22-
- "de-de"
23-
- "es-es"
24-
- "fr-fr"
25-
- "it-it"
26-
- "ja-jp"
27-
- "ko-kr"
28-
- "pl-pl"
29-
- "pt-br"
30-
- "ru-ru"
31-
- "tr-tr"
32-
- "zh-cn"
33-
- "zh-tw"
3417
---
3518
# CFixedStringT: Example of a Custom String Manager
3619
The ATL library implements one example of a custom string manager used by class [CFixedStringT](../atl-mfc-shared/reference/cfixedstringt-class.md), called **CFixedStringMgr**. `CFixedStringT` is derived from [CStringT](../atl-mfc-shared/reference/cstringt-class.md) and implements a string that allocates its character data as part of the `CFixedStringT` object itself as long as the string is less than the length specified by the **t_nChars** template parameter of `CFixedStringT`. With this approach, the string does not need the heap at all, unless the length of the string grows beyond the size of the fixed buffer. Because `CFixedStringT` does not always use a heap to allocate its string data, it cannot use **CAtlStringMgr** as its string manager. It uses a custom string manager (**CFixedStringMgr**), implementing the [IAtlStringMgr](../atl-mfc-shared/reference/iatlstringmgr-class.md) interface. This interface is discussed in [Implementation of a Custom String Manager (Advanced Method)](../atl-mfc-shared/implementation-of-a-custom-string-manager-advanced-method.md).

docs/atl-mfc-shared/cstring-argument-passing.md

Lines changed: 3 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -4,40 +4,16 @@ ms.custom: ""
44
ms.date: "11/04/2016"
55
ms.reviewer: ""
66
ms.suite: ""
7-
ms.technology:
8-
- "cpp-windows"
7+
ms.technology: ["cpp-windows"]
98
ms.tgt_pltfrm: ""
109
ms.topic: "reference"
11-
dev_langs:
12-
- "C++"
13-
helpviewer_keywords:
14-
- "strings [C++], as function input/output"
15-
- "argument passing [C++]"
16-
- "arguments [C++], passing"
17-
- "functions [C++], strings as input/output"
18-
- "argument passing [C++], C strings"
19-
- "passing arguments, C strings"
20-
- "CString objects, passing arguments"
21-
- "string arguments"
10+
dev_langs: ["C++"]
11+
helpviewer_keywords: ["strings [C++], as function input/output", "argument passing [C++]", "arguments [C++], passing", "functions [C++], strings as input/output", "argument passing [C++], C strings", "passing arguments, C strings", "CString objects, passing arguments", "string arguments"]
2212
ms.assetid: a67bebff-edf1-4cf4-bbff-d1cc6a901099
2313
caps.latest.revision: 13
2414
author: "mikeblome"
2515
ms.author: "mblome"
2616
manager: "ghogen"
27-
translation.priority.ht:
28-
- "cs-cz"
29-
- "de-de"
30-
- "es-es"
31-
- "fr-fr"
32-
- "it-it"
33-
- "ja-jp"
34-
- "ko-kr"
35-
- "pl-pl"
36-
- "pt-br"
37-
- "ru-ru"
38-
- "tr-tr"
39-
- "zh-cn"
40-
- "zh-tw"
4117
---
4218
# CString Argument Passing
4319
This article explains how to pass [CString](../atl-mfc-shared/reference/cstringt-class.md) objects to functions and how to return `CString` objects from functions.

docs/atl-mfc-shared/cstring-exception-cleanup.md

Lines changed: 3 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -4,34 +4,16 @@ ms.custom: ""
44
ms.date: "11/04/2016"
55
ms.reviewer: ""
66
ms.suite: ""
7-
ms.technology:
8-
- "cpp-windows"
7+
ms.technology: ["cpp-windows"]
98
ms.tgt_pltfrm: ""
109
ms.topic: "reference"
11-
dev_langs:
12-
- "C++"
13-
helpviewer_keywords:
14-
- "CString objects, exceptions"
15-
- "exception handling, cleanup code"
10+
dev_langs: ["C++"]
11+
helpviewer_keywords: ["CString objects, exceptions", "exception handling, cleanup code"]
1612
ms.assetid: 28b9ce70-be63-4a0d-92a8-44bbfbc95e83
1713
caps.latest.revision: 10
1814
author: "mikeblome"
1915
ms.author: "mblome"
2016
manager: "ghogen"
21-
translation.priority.ht:
22-
- "cs-cz"
23-
- "de-de"
24-
- "es-es"
25-
- "fr-fr"
26-
- "it-it"
27-
- "ja-jp"
28-
- "ko-kr"
29-
- "pl-pl"
30-
- "pt-br"
31-
- "ru-ru"
32-
- "tr-tr"
33-
- "zh-cn"
34-
- "zh-tw"
3517
---
3618
# CString Exception Cleanup
3719
In previous versions of MFC, it was important that you clean up [CString](../atl-mfc-shared/reference/cstringt-class.md) objects after use. With MFC version 3.0 and later, explicit cleanup is no longer necessary.

docs/atl-mfc-shared/cstring-operations-relating-to-c-style-strings.md

Lines changed: 3 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -4,44 +4,16 @@ ms.custom: ""
44
ms.date: "11/04/2016"
55
ms.reviewer: ""
66
ms.suite: ""
7-
ms.technology:
8-
- "cpp-windows"
7+
ms.technology: ["cpp-windows"]
98
ms.tgt_pltfrm: ""
109
ms.topic: "reference"
11-
dev_langs:
12-
- "C++"
13-
helpviewer_keywords:
14-
- "CString objects, basic operations"
15-
- "MFC [C++], string handling class"
16-
- "string conversion [C++], C-style strings"
17-
- "strings [C++], string operations"
18-
- "standard run-time library string functions"
19-
- "null values, Null-terminated string conversion"
20-
- "string functions"
21-
- "strings [C++], in C"
22-
- "string arguments"
23-
- "C-style strings"
24-
- "strings [C++], class CString"
25-
- "casting CString objects"
10+
dev_langs: ["C++"]
11+
helpviewer_keywords: ["CString objects, basic operations", "MFC [C++], string handling class", "string conversion [C++], C-style strings", "strings [C++], string operations", "standard run-time library string functions", "null values, Null-terminated string conversion", "string functions", "strings [C++], in C", "string arguments", "C-style strings", "strings [C++], class CString", "casting CString objects"]
2612
ms.assetid: 5048de8a-5298-4891-b8a0-c554b5a3ac1b
2713
caps.latest.revision: 17
2814
author: "mikeblome"
2915
ms.author: "mblome"
3016
manager: "ghogen"
31-
translation.priority.ht:
32-
- "cs-cz"
33-
- "de-de"
34-
- "es-es"
35-
- "fr-fr"
36-
- "it-it"
37-
- "ja-jp"
38-
- "ko-kr"
39-
- "pl-pl"
40-
- "pt-br"
41-
- "ru-ru"
42-
- "tr-tr"
43-
- "zh-cn"
44-
- "zh-tw"
4517
---
4618
# CString Operations Relating to C-Style Strings
4719
A [CString](../atl-mfc-shared/using-cstring.md) object contains character string data. `CString` inherits the set of the [methods and operators](../atl-mfc-shared/reference/cstringt-class.md) that are defined in the class template [CStringT](../atl-mfc-shared/reference/cstringt-class.md) to work with string data. (`CString` is a `typedef` that specializes `CStringT` to work with the kind of character data that `CString` supports.)

0 commit comments

Comments
 (0)