事实上,这个东西是从C语言中遗留过来的,typedef可以定义新的复合类型或给现有类型起一个别名,在C语言中,如果你使用了代码段1的方法,后面使用时就必须用 struct xxx1 变量
来声明变量。
struct xxx1
{
};
而使用代码段2的方法 就可以写为 XXXXX 变量
来声明变量了。
typedef struct xxx2
{
}XXXXX;
不过在C++中已经没有这回事了,无论你用哪一种写法都可以使用第二种方式声明变量,这个应该算是C语言的糟粕。
事实上,这个东西是从C语言中遗留过来的,typedef可以定义新的复合类型或给现有类型起一个别名,在C语言中,如果你使用了代码段1的方法,后面使用时就必须用 struct xxx1 变量
来声明变量。
struct xxx1
{
};
而使用代码段2的方法 就可以写为 XXXXX 变量
来声明变量了。
typedef struct xxx2
{
}XXXXX;
不过在C++中已经没有这回事了,无论你用哪一种写法都可以使用第二种方式声明变量,这个应该算是C语言的糟粕。