Ceci est mon constructeur:Est-ce que les objets CreateInstance doivent être détruits de manière explicite dans le destructeur?
CMSATools::CMSATools()
{
m_pInterface = NULL;
HRESULT hr;
hr = m_pInterface.CreateInstance(__uuidof(MSAToolsLibrary::MSAToolsLibraryClass));
if (FAILED(hr))
{
// TODO }
}
m_pInterface est défini:
MSAToolsLibrary::IMSAToolsLibraryInterfacePtr m_pInterface;
Vous voulez savoir si 'm_pInterface' doit être libéré dans le distracteur CMSATools ?? – Praveen
Le comportement de 'm_pInterface' dépend de' m_pInterface': son type et son état actuel. Vous ne montrez pas ça. Les objets COM, ce qui semble être, sont comptés par référence, et si vous n'utilisez pas de pointeur intelligent, vous devez appeler ses méthodes 'AddRef' et' Release' selon le cas. Soit gérer la copie de votre objet, soit désactiver la copie. –
@ Cheersandhth.-Alf S'il vous plaît voir la question mise à jour. –