【发布时间】:2012-03-19 13:37:33
【问题描述】:
刚刚收到一条错误消息,上面写着“union __anonymous 只能是聚合的一部分”。我对此并不感到困惑,因为我正在尝试一些我知道不应该工作的东西。
但这让我想知道 D 中“聚合”的确切定义是什么。我猜它是一种可以包含其他类型的类型,例如数组、结构或类。或者还有更多的意义吗?
【问题讨论】:
刚刚收到一条错误消息,上面写着“union __anonymous 只能是聚合的一部分”。我对此并不感到困惑,因为我正在尝试一些我知道不应该工作的东西。
但这让我想知道 D 中“聚合”的确切定义是什么。我猜它是一种可以包含其他类型的类型,例如数组、结构或类。或者还有更多的意义吗?
【问题讨论】:
聚合是一个结构或类。这个想法是,您不能将匿名联合作为局部或全局变量,而只能作为对象的成员。
【讨论】:
我相信在这种情况下,“聚合”与实例级关系有关。在 UML 术语中:http://en.wikipedia.org/wiki/Class_diagram#Aggregation。因此,用最简单的术语来说,“聚合”是指用户定义类型的成员,该成员属于其他用户定义类型(因此在两个用户定义类型之间建立了特殊的“链接”)。
【讨论】: