关于c ++:定义结构

defining a struct

本问题已经有最佳答案,请猛点这里访问。

Possible Duplicate:
Difference between 'struct' and 'typedef struct' in C++?

有什么区别:

1
2
3
struct a{
...
}

1
2
3
typedef struct{
...
}  a;


在C++中,没有区别。但是,在c中,使用

1
struct a { ... };

要求使用以下命令声明变量:

1
2
3
4
int main ( int, char ** )
{
    struct a instance;
}

为了避免变量声明中出现多余的struct,需要使用前面提到的typedef,并且只允许使用a instance;语法。


在第一个申报中,你必须说"EDOCX1"〔0〕;在第二个申报中,你只说"EDOCX1"〔1〕。