在c++中定义COM指针作为私有成员



我想知道如何将COM指针定义为私有成员。下面是我想做的:

:

MCLControlPtr _mcSwitch;  //MCLControPtr is "_COM_SMARTPTR_TYPEDEF(_MCLControlClass, __uuidof(_MCLControlClass));"

在CPP构造文件

ThorDetectorSwitch::ThorDetectorSwitch() 
{
     _mcSwitch = new MCLControlPtr _mcSwitch(__uuidof(MCLControlClass));
    _deviceDetected = FALSE;
}

,但它当然不允许我构建,因为语法不对。

我想知道如何用正确的语法做我想做的事情?基本上初始化一个COM智能指针在构造函数?我也不想使用初始化列表。谢谢。

更新:有人知道吗?这事已经困扰我好几天了。

你可以这样做:

在你的头文件

COMInterface *_comInterface;

在cpp文件

COMInterfacePtr comSmartPtr;
hr = ::CoCreateInstance(see reference for stuff inside here);
_comInterface = comSmartPtr;

相关内容

  • 没有找到相关文章

最新更新