读书人

A种的成员函数的定义中用B类创建对象

发布时间: 2012-07-19 16:02:20 作者: rapoo

A类的成员函数的定义中用B类创建对象,A和B在UML是什么关系?
A类的成员函数的定义中用到了B,如下: B *b=new B(); 这样A和B在UML是什么关系?依赖还是复合? 为什么?

[解决办法]
复合,因为并非是由B继承
[解决办法]
Class B
{
};

Class A
{
void Func(B* b);
};
这叫A依赖B

Class A
{
B b;
}
这叫组合,A完蛋B也完蛋

Class A
{
B* b;
}
这叫聚合,A完蛋B不一定完蛋
[解决办法]
http://wenku.baidu.com/view/51202cd1b14e852458fb57f2.html
[解决办法]

探讨

引用:

Class B
{
};

Class A
{
void Func(B* b);
};
这叫A依赖B

Class A
{
B b;
}
这叫组合,A完蛋B也完蛋

Class A
{
B* b;
}
这叫聚合,A完蛋B不一定完蛋

C/C++ code

Class A
{
A{
B* ……

读书人网 >C++

热点推荐