/---------------------------THE START----------------------------------/
定义:
1、typedef的定义
语法:
typedef existing-type new-type;
关键字typedef 允许你从一个现有的类型中创建一个新类型。
2、struct 的定义
语法:
struct struct-name : inheritance-list
{
public-members-list;
protected:
protected-members-list;
private:
private-members-list;
} object-list;
structs 类似于 classes, struct中的成员更像是类中的公共成员.在C中,structs 仅能包含数据并不允许有继承表. 例如:
struct Date
{
int Day;
int Month;
int Year;
};
3、二者的联系
(1):定义结构体person:
struct person
{
char name;
int age;
};
使用所定义的结构体语法:
struct person per1
或者连在一起定义:
struct person
{
char name;
int age;
}per2;
忽略类型名定义:
struct
{ char name[20];
char sex;
int age;
float height;
} per3;
这种定义形式与前两种方法不同,没有说明这种结构体类型的名称。所以这种方式通常用在不需要再次定义此类型结构体变量的情况下。
per1、per2、per3均为结构体变量
单独创建新变量时要声明
struct person per4
(2):在(1)的基础上,进行类型定义,使用关键字typedef定义类型struct person。
typedef struct person
{
char name;
int age;
}teacher;
单独创建新变量时可以省去struct,声明如下:
teacher tch1;
4、二者的区别
用typedef进行struct类型定义后,可以直接用定义的3、(2)中的teacher进行变量声明,相当于做了俩步:
第一步:
struct person
{
char name;
int age;
}
第二步:
typedef struct person teacher;
/*
关键字 原类型名 新类型名
*/
5、注意:
以上是指在.c文件中的定义方法。
在.cpp文件中可以在定义了:
struct person
{
char name;
int age;
}
后,直接调用
person someone1;
来定义变量。
/---------------------------THE END----------------------------------/