佚名通过本文主要向大家介绍了用3种不同的方法,c5h12有3种不同结构,用3种不同的颜色,袋子里有3种颜色不同,wps的3种会员的区别等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com
问题: 3种不同的CreateInstance,有什么区别?
描述:
解决方案1:
描述:
在使用msxml的com接口时,网上的例子有3种不同的_com_ptr_t的CreateInstance.
IXMLDOMDocumentPtr xmlFile;
1. xmlFile.CreateInstance("Msxml2.DOMDocument.4.0");
2. xmlFile.CreateInstance(__uuidof(MSXML::DOMDocument));
3. CLSID clsidDOMDocument;
CLSIDFromString(_T("MSXML2.DOMDocument.5.0"), &clsidDOMDocument);
xmlDoc.CreateInstance(clsidDOMDocument);
我的问题:
(1)似乎第3种多了一次函数调用啊,3相对1,2两种方法,所做的工作有什么不同么?
什么时候必须用第3种方法?
(2)CreateInstance传入一个uuid的话,那么我觉得,显然只能是对应的接口的uuid,例如IXMLDOMDocumentPtr就应该是MSXML::DOMDocument,这个是不是多此一举?
或者说,CreateInstance可以传入其他的uuid? 这样有意义么?
谢谢!
解决方案1:
都是一样的,和通过uuid来创建一样
解决方案2: 只是参数不同嘛
不就是,可以通过名字创建,也可以通过uuid创建,还可以通过名字获得uuid,然后创建