一、typedef定义类型的同义词
typedef int MY_INT;
二、typedef 能不能重复定义?
答案是可以。因为typedef没有定义新的类型,只是定义了类型的同义词。比如:
typedef double Wages;
typedef double Wages;
三、typedef 定义的类型同义词是否可以作为声明?
可以声明结构类型,类类型。那么可以声明typedef 定义的类型同义词吗?答案是不行。
class C; //OK
struct S; //OK
ElementType; //ElementType在其它文件定义: typedef int ElementType;
ElementType *ele; // Error
这样编译不能通过,编译器不会认为ElementType是一个类型。