用基本类型、const修饰符和声明运算符构造出来的类型,称为内置类型(built-in type)。C++的内置类型及其操作非常丰富,不过有意设计得更偏低层。这些内置类型能直接、高效地反映传统计算机硬件的能力,但是没有为程序员提供便于编写高级应用程序的高层设施。取而代之,C++在内置类型和操作的基础上增加了一套精致的抽象机制(abstraction mechanism),程序员可用它来构造所需的高层设施。
C++抽象机制的目的主要是令程序员能够设计并实现他们自己的数据类型,这些类型具有恰合其分的表示和操作,程序员可以简单优雅地使用它们。利用C++的抽象机制从其他类型构造出来的类型被称为用户自定义类型(user-defined type),即类(class)和枚举(enumeration)。用户自定义类型可以基于内置类型构造,也可基于其他用户自定义类型构造。本书的大部分内容都在着重介绍用户自定义类型的设计、实现和使用。用户自定义类型通常优于内置类型,因为其更易用、更不易出错,而且通常与直接使用内置类型实现相同功能一样高效,甚至更快。
本章的剩余部分将呈现类型定义和使用相关的最简单同时也是最基础的语言设施。第4~7章对抽象机制及其支持的编程风格进行了更加详细的介绍。第8~15章给出标准库的概念,因为标准库主要是由用户自定义类型组成的,所以这些章节也提供了很好的示例,展示了用第1~7章介绍的语言设施和编程技术能做什么。