C++面向对象高级编程(上) 第三周 侯捷 类与类之间的关系
Composition(复合)——has a 类中有类 Adapter(一种设计模式名) 例如:queue里面包含了deque,他通过调用deque的函数来实现增加的功能。 所有的功能都在的deque中完成了,queue想拥有deque的功能,就这么做。 queue里面,只实现了调用个deque的功能,并没有实现deque的全部功能。 并不是所有的复合都长成这样,我们这里是用adapter(一种设计模式)来讲而已。 Composition从内存的角度看 看中间那个矩形(deque),他里面有两个Itr对象,一根指针和一个unsigned int类型的整数,因此他的大小是16*2+4+4=40字节(因为Itr对象(右一矩形)中有四根指针,所以大小为16字节)。 再看左侧的queue类,由于他里面只包含一个deque类的对象,因此queue的大小也是40. Composition(复合)关系下的构造和析构函数 构造的过程中——由内而外的构造 container的构造函数先调用component的默认的构造函数,如果你希望调用别的构造函数,你需要自己写调用的构造函数以及函数里面的...
