C++ Primer Plus读书笔记:类型别名

C++为类型建立别名的方式有两种。 一种是使用预处理器: # define BYTE char 这样预处理器将在编译程序时用 char 替换所有的 BYTE ,从而使 BYTE 成为 char 的别名 第二种方法是使用关键字 typedef 来创建别名。 例如要将 byte 作为 char 的别名,可以这样做: typedef char byte; 下面是通用格式: typedef typeName aliasName ;. 换句话说,如果要将 aliasName 作为某种类型的别名,可以声明 aliasName ,如同将 aliasName 声明为这种类型的变量那样,然后在声明的前面加上关键字 typedef 。例如,要让 byte_pointer 成为 char 指针的别名,可将byte_pointer 声明为 char 指针,然后在前面加上 typedef typedef char * byte_pointer; 也可以使用#define ,不过声明一系列变量时,这种方法不适用。

typedef 方法不会有这样的问题,它能够处理更复杂的类型别名,这使得与使用#define 相比,使用 typedef是一种更佳的选择,有时候这也是唯一的选择。

经验分享 程序员 微信小程序 职场和发展