enum {...}定义了一个具体的枚举类型,后面加变量名就是定义了这个类型的枚举变量。结构体、联合体都是一样的。
struct Object {
// ...
} object;和
struct Object {
// ...
};
Object object;是一样的,不过在C语言里表示结构体类型需要加上struct,比如像struct Object object;是定义,所以经常会这样简化代码,或者写出
typedef struct object {
// ...
} Object;这种代码,结构体名称首字母小写,但是别名是大写,也就是struct object和Object是等价的,而在C++中就不需要特地加上struct修饰类型。