ATL包含和聚合
实现聚合的步骤:
1.创建一个内部主件
2.创建一个外部主件
3.添加代码
IUnkNown* m_pSimpleUnkNow;
DECLARE_GET_CONTROLLING_UNKNowN()
HRESULT FinalConstruct()
{
HRESULT hr = CoCreateInstance(CLSID_MyMath,GetControllingUnkNown(),
CLSCTX_INPROC_SERVER,IID_IUnkNown,(void**)&m_pSimpleUnkNow);
return hr;
}
void FinalRelease()
{
if(m_pSimpleUnkNow)
{
m_pSimpleUnkNow->Release();
}
}
实现包容的步骤:
1.创建一个内部主件
2.创建一个外部主件
3.添加代码
继承IMyMath接口
COM_INTERFACE_ENTRY(IMyMath)
IMyMath *m_pMath;
HRESULT FinalConstruct()
{
HRESULT hr = CoCreateInstance(CLSID_MyMath,CLSCTX_INPROC_SERVER,IID_IMyMath,(void**)&m_pMath);
return hr;
}
void FinalRelease()
{
if(m_pMath)
{
m_pMath->Release();
} }
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。