【C++沉思录】句柄2
摘要:1、【C++沉思录】句柄1 存在问题: 句柄为了绑定到Point的对象上,必须定义一个辅助类UPoint,如果要求句柄绑定到Point的子类上,那就存在问题了。2、有没有更简单的办法呢? 句柄使用Point*直接绑定到Point对象上(包括子类),为了保持多个句柄引用计数的一致性,使用int* 指向...
阅读全文
posted @
2015-07-26 20:43
Andy Niu
阅读(333)
推荐(0) 编辑
【C++沉思录】句柄1
摘要:1、在【C++沉思录】代理类中,使用了代理类,存在问题: a、代理复制,每次创建一个副本,这个开销有可能很大 b、有些对象不能轻易创建副本,比如文件2、怎么解决这个问题? 使用引用计数句柄,对动态资源封装,句柄包含指针,多个句柄可以指向同一个对象。复制的时候,只是复制句柄的指针。3、使用引用计数句柄...
阅读全文
posted @
2015-07-26 20:41
Andy Niu
阅读(670)
推荐(0) 编辑
【C++沉思录】代理类
摘要:1、考虑下面的场景:设计一个容器,包含一组类型不同但相互关联的对象(比如:Animal,Dog,Cat),对象具备多态行为。2、容器一般只能包含一种类型的对象,使用vector 会造成对象切割,不具备多态行为。3、经典的解决办法是:vector, 但是这会增加内存管理的负担。考虑下面的情况: Dog...
阅读全文
posted @
2015-07-26 20:40
Andy Niu
阅读(701)
推荐(0) 编辑