代理的创建 会 复制所代理的对象,如何避免复制
(保持多态性的前提下避免复制对象的代价)
- 某些类应当避免复制
- 对象很大,资源消耗多
- 每个对象代表一种不能被轻易复制的资源,如文件
- 其它数据结构已经存储对象的地址,把副本地址插入那些数据结构中代价会非常大
- 对象代表位于网络连接另一端的其他对象
- 多态性环境中只知对象基类类型而不知对象本身类型
代理的创建 会 复制所代理的对象,如何避免复制
(保持多态性的前提下避免复制对象的代价)
如何设计C++容器,能够包含类型不同而彼此相关的对象
如何将继承自同一父类的属于不同子类的对象装入同一个容器(如vector)之中?
(将容器和继承运用在一起)
surrogate是handle(句柄)类中最简单的一种