Classes, Structures, and Unions
Important This document may not represent best practices for current development, links to downloads and other resources may no longer be valid. Current recommended version can be found here. ArchiveDisclaimer

Classes, Structures, and Unions

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:

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

See Also

C++ Language Reference

© 2016 Microsoft