COM 的聚合和包容

我们可以这样去认识它们

 

包容(Containment/Delegate)

com的包容就是在自己的组件里利用别人的组件。

实现这种目的的步骤很简单:如下代码

HRESULT FinalConstruct()
 {
  HRESULT hr;
  hr = CoCreateInstance( CLSID_SimpleMath, NULL,
          CLSCTX_INPROC_SERVER,
          IID_IMath,
          (LPVOID*)&m_pSimpleIMath );
  return hr;
 }

 void FinalRelease()
 {
  if( m_pSimpleIMath )
  {
   m_pSimpleIMath->Release();
  }
 }

 

聚合/集合

就是把别人的组建和我们组件组装到一起,我们的组件和被集合的组件可以说是同级的,具体实现参看文档,其实也很简单

 

主要是弄清楚它们的区别,知道什么时候该用包容,什么时候该用聚合就好了。用atl去实现它们很轻松的

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值