UML中对象有关联,聚合,引用等抽象意义上的含义,但实现的形式用C++来说基本如下
伪代码
class 类1
{
类1函数操作()
};
class 类2
{
public :
类2(类1* c)
{
_c=c;
} // 这个也可以用类2(类1*c):_c(c) 代替
类2函数操作()
{
_c ->类1函数操作 //实现了类1和类2的函数关系
}
Private:继承类的时候Protected:
类1 * _c
};
红色是关键, 定义了一个引用的接口
class 类3: public 类2
{
类3(类1* h):类2(h) //实现了和类2的接口,
//函数中直接使用基类_c //实现了和类2接口,通过类2的接口,时间了类3和类1的组合
//直接使用基类_c很少见,一般是在基类定义一个函数,函数中返回 this->_c,然后在派生类直接使用这个函数代替了_c出现。
}
如上方法基本贯穿对象的组合。设计模式中