Skip to content

Commit 9f7dbea

Browse files
mikeblomeColin Robertson
authored andcommitted
removed most refs to Visual C++ .NET and fixed an error page in the process (#396)
1 parent 971f463 commit 9f7dbea

File tree

49 files changed

+209
-293
lines changed

Some content is hidden

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

49 files changed

+209
-293
lines changed

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

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ ms.author: "mblome"
1717
manager: "ghogen"
1818
---
1919
# ATL/MFC Shared Classes
20-
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.
20+
These utility classes can be used in any native C++ project without requiring any MFC DLL.
2121

2222
## In This Section
2323
[Classes Shared Between MFC and ATL](../atl-mfc-shared/reference/classes-shared-by-mfc-and-atl.md)

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

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -140,7 +140,7 @@ public CSimpleStringT<BaseType,
140140
`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.
141141

142142
> [!NOTE]
143-
> 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).
143+
> If your code contains the workaround for linker errors that is described in [Linking Errors When You Import CString-Derived Classes" (Q309801)](https://support.microsoft.com/help/309801/you-may-receive-an-lnk2019-error-message-when-you-build-a-visual-c-200), you should remove that code. It is no longer needed.
144144
145145
The following string types are available within MFC-based applications:
146146

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

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -127,8 +127,7 @@ CTime(const DBTIMESTAMP& dbts,int nDST = -1) throw();
127127

128128
`time`
129129
A **__time64_t** time value, which is the number of seconds after January 1, 1970 UTC. Note that this will be adjusted to your local time. For example, if you are in New York and create a `CTime` object by passing a parameter of 0, [CTime::GetMonth](#getmonth) will return 12.
130-
131-
In Visual C++ versions 6.0 and earlier, `time` was a value of `time_t`. Visual C++ .NET and later converts a `time_t` parameter to **__time64_t**.
130+
132131

133132
`nYear`, `nMonth`, `nDay`, `nHour`, `nMin`, `nSec`
134133
Indicates the date and time values to be copied into the new `CTime` object.

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

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -114,7 +114,7 @@ CTimeSpan(
114114
A `CTimeSpan` object that already exists.
115115

116116
`time`
117-
A **__time64_t** time value, which is the number of seconds in the time span. In Visual C++ versions 6.0 and earlier, `time` was a value of `time_t`. Visual C++ .NET or later silently converts a `time_t` parameter to **__time64_t**.
117+
A **__time64_t** time value, which is the number of seconds in the time span.
118118

119119
`lDays`, `nHours`, `nMins`, `nSecs`
120120
Days, hours, minutes, and seconds, respectively.

docs/atl/reference/compiler-options-macros.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,7 @@ These macros control specific compiler features.
6464

6565
If this `#define` is added, the ATL headers are careful to preserve the state of these warnings so that they are not disabled globally (or if the user explicitly disables individual warnings, not to enable them).
6666

67-
New projects generated with Visual C++ .NET 2002 will have this `#define` set in stdafx.h by default.
67+
New projects have this `#define` set in stdafx.h by default.
6868

6969
## <a name="_atl_apartment_threaded"></a> _ATL_APARTMENT_THREADED
7070
Define if one or more of your objects use apartment threading.

docs/atl/reference/default-atl-project-configurations.md

Lines changed: 3 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
---
22
title: "Default ATL Project Configurations | Microsoft Docs"
33
ms.custom: ""
4-
ms.date: "11/04/2016"
4+
ms.date: "10/20/2017"
55
ms.reviewer: ""
66
ms.suite: ""
77
ms.technology: ["cpp-windows"]
@@ -16,12 +16,7 @@ ms.author: "mblome"
1616
manager: "ghogen"
1717
---
1818
# Default ATL Project Configurations
19-
This topic compares the default ATL project configurations in Visual C++ .NET with the default project configurations in Visual C++ 6.0.
20-
21-
## Visual C++ .NET Default Configurations
22-
In Visual C++ .NET, the ATL Project Wizard creates two project configurations by default.
23-
24-
### Visual C++ .NET Configurations
19+
The ATL Project Wizard creates two project configurations by default:
2520

2621
|Configuration|Character set|Use of ATL|
2722
|-------------------|-------------------|----------------|
@@ -30,20 +25,7 @@ This topic compares the default ATL project configurations in Visual C++ .NET wi
3025

3126
**Character set**, **Use of ATL** and can all be changed in the **Project Settings** dialog under the **General** tab. You can also add your own configurations using the Configuration Manager. For details, see [Build Configurations](/visualstudio/ide/understanding-build-configurations).
3227

33-
## Version 6.0 Default Configurations
34-
In Visual C++ version 6.0, the ATL COM AppWizard (now called the ATL Project Wizard) created six project configurations by default. The configurations were variations on Release, Debug, Unicode, and use of CRT and ATL settings. All these configurations can be duplicated in Visual C++ .NET using the Configuration Manager, if so desired.
35-
36-
### Version 6.0 Configurations
37-
38-
|Configuration|Character set|Use of ATL|
39-
|-------------------|-------------------|----------------|
40-
|Debug|MBCS|Static|
41-
|Debug Unicode|UNICODE|Static|
42-
|Release Min Dependency|MBCS|Static|
43-
|Release Min Dependency Unicode|UNICODE|Static|
44-
|Release Min Size|MBCS|DLL|
45-
|Release Min Size Unicode|UNICODE|DLL|
46-
28+
4729
## See Also
4830
[Programming with ATL and C Run-Time Code](../../atl/programming-with-atl-and-c-run-time-code.md)
4931
[Working with Project Properties](../../ide/working-with-project-properties.md)

docs/build/reference/assemblydebug-add-debuggableattribute.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ manager: "ghogen"
4242
```
4343

4444
## Remarks
45-
In Visual C++ .NET 2003 and later, it is necessary to explicitly specify that a managed image be debuggable. Using [/Zi](../../build/reference/z7-zi-zi-debug-information-format.md) alone is not sufficient.
45+
It is necessary to explicitly specify that a managed image be debuggable. Using [/Zi](../../build/reference/z7-zi-zi-debug-information-format.md) alone is not sufficient.
4646

4747
Other linker options that affect assembly generation are:
4848

docs/cpp/general-rules-and-limitations.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,7 @@ manager: "ghogen"
6363
}
6464
```
6565
66-
- Because of a change in behavior introduce in Visual C++ .NET to make the application of `dllexport` more consistent between regular classes and specializations of class templates, if you apply `dllexport` to a regular class that has a base class that is not marked as `dllexport`, the compiler will generate C4275.
66+
- If you apply `dllexport` to a regular class that has a base class that is not marked as `dllexport`, the compiler will generate C4275.
6767
6868
The compiler generates the same warning if the base class is a specialization of a class template. To work around this, mark the base-class with `dllexport`. The problem with a specialization of a class template is where to place the **__declspec(dllexport)**; you are not allowed to mark the class template. Instead, explicitly instantiate the class template and mark this explicit instantiation with `dllexport`. For example:
6969
@@ -80,7 +80,7 @@ manager: "ghogen"
8080
// ...
8181
```
8282
83-
Because this is common pattern with templates, the compiler changed the semantics of `dllexport` when it is applied to a class that has one or more base-classes and when one or more of the base classes is a specialization of a class template. In this case, the compiler implicitly applies `dllexport` to the specializations of class templates. In Visual C++ .NET, a user can do the following and not get a warning:
83+
Because this is common pattern with templates, the compiler changed the semantics of `dllexport` when it is applied to a class that has one or more base-classes and when one or more of the base classes is a specialization of a class template. In this case, the compiler implicitly applies `dllexport` to the specializations of class templates. You can do the following and not get a warning:
8484
8585
```
8686
class __declspec(dllexport) D : public B<D> {

docs/cpp/member-function-templates.md

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -62,8 +62,6 @@ int main()
6262
```
6363

6464
## Example
65-
66-
Additionally, in Visual Studio .NET 2003 and later, member templates can also be defined outside of a class.
6765

6866
```cpp
6967
// defining_member_templates_outside_class.cpp
@@ -91,7 +89,7 @@ int main()
9189

9290
Member template functions cannot be virtual functions and cannot override virtual functions from a base class when they are declared with the same name as a base class virtual function.
9391

94-
Visual C++ .NET 2003 introduced support for templated user-defined conversions. The following sample works in Visual C++ .NET 2003 as specified in the standard.
92+
The following example shows a templated user-defined conversion:
9593

9694
```cpp
9795
// templated_user_defined_conversions.cpp

docs/cpp/new-and-delete-operators.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ manager: "ghogen"
2020

2121
C++ supports dynamic allocation and deallocation of objects using the [new](../cpp/new-operator-cpp.md) and [delete](../cpp/delete-operator-cpp.md) operators. These operators allocate memory for objects from a pool called the free store. The `new` operator calls the special function [operator new](../cpp/new-operator-cpp.md), and the `delete` operator calls the special function [operator delete](../cpp/delete-operator-cpp.md).
2222

23-
In Visual C++ .NET 2002, the `new` function in the C++ Standard Library will support the behavior specified in the C++ standard, which is to throw a std::bad_alloc exception if the memory allocation fails. If you still want the non-throwing version of `new`, link your program with nothrownew.obj. However, when you link with nothrownew.obj, the default `operator new` in the C++ Standard Library no longer functions.
23+
The `new` function in the C++ Standard Library supports the behavior specified in the C++ standard, which is to throw a std::bad_alloc exception if the memory allocation fails. If you still want the non-throwing version of `new`, link your program with nothrownew.obj. However, when you link with nothrownew.obj, the default `operator new` in the C++ Standard Library no longer functions.
2424

2525
For a list of the library files that comprise the C Runtime Library and the C++ Standard Library, see [CRT Library Features](../c-runtime-library/crt-library-features.md).
2626

0 commit comments

Comments
 (0)