Classes, Structures, and Unions
Visual Studio .NET 2003
This section introduces C++ classes. Classes, which can contain data and functions, introduce user-defined types into a program. User-defined types in traditional programming languages are collections of data which, taken together, describe an object's attributes and state. Class types in C++ enable you to describe attributes and state, and to define behavior.
The following topics are included:
- Overview
- Class names
- Class members
- Member functions
- Static data members
- Unions
- Bit fields
- Nested class declarations
- Type names in class scope
The three class types are structure, class, and union. They are declared using the struct, class, and union keywords (see the class-key grammar in Defining Class Types). The following table shows the differences among the three class types.
Access Control and Constraints of Structures, Classes, and Unions
| Structures | Classes | Unions |
|---|---|---|
| class-key is struct | class-key is class | class-key is union |
| Default access is public | Default access is private | Default access is public |
| No usage constraints | No usage constraints | Use only one member at a time |