从com看代码的重用级别

1.C++类库的重用
使用方式
.h + lib
一旦被编译进项目,该模块不再有类库的概念,它已经是项目的一部分了。
在运行时,他不载入内存,有很多模块使用它,就有很多个拷贝存在内存中。
当类库被patch后,没办法刷新已发布的项目。
2.dll级别
使用方式
.h + lib + dll
其实,dll样式的重用已经不错了,而且使用def文件可以保证导出函数的一致性。
但是,我们无法处理异常等编译器相关的东西。
但是,dll有版本问题,实现的修改引发lib的修改,但是未经修改的dll在先的实现模式下很可能出问题。就譬如sizeof int 由 4 改为8的时候,相关的越界访问一定很明显。
3.接口防火墙
.h + lib + dll
函数太多是转发函数的开发量很大
性能不理想
而且,它依然是dll,还是没有解决二进制格式上的问题。
4.抽象基类作为二进制接口
这个地方引入了自己的new和delete方法
这个方案看似很比较完美,但是不支持接口的演化。
5.引入继承
这可以完美解决接口的扩充性
6.附带资源管理AddRef & Release
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值