复合方法(composition)和 private担任, 都能暗示, 按照某个类实现出新的类的形式, 即通过利用protected成员, 和重写virtual函数.
优先选择复合方法. 原因:
1. 复合方法, 可以实现重写virtual函数, 然后阻止派生类从头界说virtual函数;
2. 可以使Widget的编译依存度降至最低, 即只包括类的声明式(复合), 而制止包括基类的头文件(担任);
破例: private担任, 可以使EBO(空缺基类最优化), 在某些空缺基类的环境下很重要, 不外很少呈现. 所以优先复合.