The fundamental data types and their
variations are essential, but rather primitive. C and C++ provide tools that
allow you to compose more sophisticated data types from the fundamental data
types. As you’ll see, the most important of these is struct, which
is the foundation for class in C++. However, the simplest way to create
more sophisticated types is simply to alias a name to another name via
typedef.