The syntax for the declaration of managed types and the creation and use of objects of these types has been significantly altered from Managed Extensions for C++ to Visual C++ 2005. This was done to promote their integration within the ISO-C++ type system. These changes are presented in detail in the following subsections.
In This Section
- Declaration of a Managed Class Type
Discusses how to declare a managed class, struct, or interface.
- Declaration of a CLR Reference Class Object
Discusses how to declare a reference class type object using a tracking handle.
- Declaration of a CLR Array
Explains how to declare and initialize an array.
- Changes in Destructor Semantics
Discusses non-deterministic finalization,
Dispose(), ramifications for reference objects, and use of an explicit
Note: The discussion of delegates is deferred until Delegates and Events in order to present them with event members within a class, the general topic of Member Declarations within a Class or Interface. (For a more detailed discussion of the rationale behind the introduction of the tracking reference syntax and the general shift in design, see Motivating the New Language Design.)