struct 是结构体的关键字,用来声明结构体变量; typedef 是用来定义新的类型名来代替已有的类型名,typedef struct 可以理解为 typdef (struct TypeName) NewTypeName。 struct 声明结构体详解:
struct Student { char name[20]; int s_ID; }stud; #Student是一个结构体类型,可用来定义结构体变量,而stud为结构体变量,可直接调用typedef struct 声明结构体详解:
typedef struct Student { char name[20]; int s_ID; }stud; #Student是一个结构体类型,而stud也是一个结构体类型,stud相当于struct Student若struct 后面无结构体名,则struct 定义一个全局变量,typedef struct 声明一个结构体类型。
struct { char name[20]; int s_ID; }st; #st是一个变量 typedef struct { char name[20]; int T_ID; }stud; #stud是一个结构体类型truct 和 class 的区别: 1:默认的继承权限:class 默认继承权限是private,而struct默认继承权限是public; 2 :成员默认的访问权限:class成员默认是private访问权限,struct默认是public权限; 3:class还用于定义模板参数,就像typename,但关键字struct不用于定义模板参数; struct可以继承class,同样class也可以继承struct。
struct S_A{}; class C_A{}; class C_B : S_A; #private继承 class C_B : public S_A; #public继承 struct C_B : C_A; #public继承 struct C_B : private C_A;#private继承