|
A typedef lets us define a synonym for a type: - typedef double wages;
- typedef int exam_score;
typedef wages salary;
A typedef name can be used as a type specifier: - wages hourly, weekly;
- exam_score test_result;
A typedef definition begins with the keyword typedef, followed by the data type and identifier. The identifier, or typedef name, does not introduce a new type but rather a synonym for the existing data type. A typedef name can appear anywhere in a program that a type name can appear.
复杂typedef 的认法:把typedef 遮住,那么这个语句定义了一个变量,如wages;再把typedef 放回去,wages 就成了一个类型,该类型与遮住typedef 时定义的wages 变量的类型相同。
注意:typedef 不定义新的类型,而是定义一个“同义词”。
Typedefs are commonly used for one of three purposes:
· To hide the implementation of a given type and emphasize instead the purpose for which the type is used
· To streamline complex type definitions, making them easier to understand
· To allow a single type to be used for more than one purpose while making the purpose clear each time the type is used
|