区别还是挺大的,要注意辨别,尤其是在多个变量的时候
都可以用来定义一个别名,
#define otherName Name
typedef Name otherName;
区别在于,多个变量定义的时候,尤其在定义指针的时候
#define D_otherName Name*
typedef Name* T_otherName;
例如:
D_otherName a,b; 这个扩展为: Name *a,b; 在这里 a变量表示指针,而b变量则不是指针
T_otherName a,b; 这个两个变量都表示指针
从这里,可以看出,typedef 更像是真正的类型,或则说是类型的别名
所以说:类型的定义最好还是用 typedef ,其他的用#define
#好好学习!