【发布时间】:2013-12-16 16:50:26
【问题描述】:
两者有什么区别:
typedef struct part
{
int a;
} Part;
和
typedef struct
{
int a;
} Part;
我知道第二个是“匿名的”,但它们有什么不同吗?
【问题讨论】:
-
在第二种情况下,您将无法将类型称为
struct part。当您在创建struct part *child必须是该结构的成员的自引用(列表或树)数据结构时,差异是显着的。 -
@SylvainDefresne 这也是有效的 C++ 代码,OP 并没有说他们只对 C 感兴趣。
-
除了自引用的潜在用途之外,这两个结构之间没有运行时差异。如果这是您问题的主要要点。
-
他们有不同的名字,和
struct A { }和struct B { }一样的区别
标签: c++ c data-structures