读书人

可以将一个类中IXMLDOMDocumentPtr类型

发布时间: 2012-03-31 13:13:26 作者: rapoo

可以将一个类中IXMLDOMDocumentPtr类型的成员变量赋给其他类的另一个同类型的成员变量吗
就是说可否把两个类之间的IXMLDOMDocumentPtr类型的值互相传递,
如果能的话那么当一个对象中的IXMLDOMDocumentPtr变量用Release()以后那另一个受不受影响?
还有, 如果一个使用了CreateInstance的IXMLDOMDocumentPtr成员赋予了另一个类的IXMLDOMDocument成员,
那么这个被人赋予了值的成员还用否使用CreateInstance呢


IXMLDOMDocumentPtr 这后面加上Ptr应该是一个智能指针吧?
它是不是可以理解为就是一个加上了自动引用记数的指针啊?
CreateInstance可以理解为是COM中的new运算符,
Release()可以理解为是COM中的delete运算符?
Release()了一个指针那另一个同样值的指针中的值也被释放了?


我这样理解可以吗

[解决办法]
就是说可否把两个类之间的IXMLDOMDocumentPtr类型的值互相传递,
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~····
直接赋值肯定不行吧,应该用cloneNode深克隆。

如果能的话那么当一个对象中的IXMLDOMDocumentPtr变量用Release()以后那另一个受不受影响?

还有, 如果一个使用了CreateInstance的IXMLDOMDocumentPtr成员赋予了另一个类的IXMLDOMDocument成员,
那么这个被人赋予了值的成员还用否使用CreateInstance呢
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
用不用都行,得看情况吧。


IXMLDOMDocumentPtr 这后面加上Ptr应该是一个智能指针吧?
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~·


它是不是可以理解为就是一个加上了自动引用记数的指针啊?
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~···

CreateInstance可以理解为是COM中的new运算符,
Release()可以理解为是COM中的delete运算符?
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~·
这个不可以,建议你买本com的书看看。
Release()了一个指针那另一个同样值的指针中的值也被释放了?
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~·
建议你买本com的书看看

读书人网 >VC/MFC

热点推荐