读书人

UML里头的“自身关联quot;在实际设计中会有

发布时间: 2013-07-16 22:38:05 作者: rapoo

UML里面的“自身关联",在实际设计中会有用到吗?
例如


class C
{
public
C* pC;
};

这个pC指向自身。这种设计有意义吗,自己就是this,不需要再存储了啊
[解决办法]
pC指向C类型的对象,但不一定指向自身。
[解决办法]
比如链表、树都有这种成员:



class tree_node
{
tree_node * lchild;
tree_node * rchild;
...
};

class node
{
node * prev;
node * next;
...
};

[解决办法]
这不是关联吧?关联是很松散的,这根据生命周期不同只能叫聚合或组合
[解决办法]
引用:
例如

class C
{
public
C* pC;
};

这个pC指向自身。这种设计有意义吗,自己就是this,不需要再存储了啊


这种情况使用太多了,楼上大牛都说了;
再提一个:部门包含部门的应用;树结构;文件夹包含文件夹结构;等等

读书人网 >C++

热点推荐