-1
A
回答
1
完全可以通过引用非COM函数来传递COM对象。尽管引用仅仅是对象的别名,但它们通常作为引擎下的指针来实现。
1
问题很腥,对象和接口的区别在COM中很重要。使用COM服务器的客户端代码只能用于接口指针。 CoCreateInstance()在服务器上创建一个对象,并返回指向由coclass实现的接口之一的接口指针。像IUnknown *一样。你从来没有处理过任何物体。 Boilerplate将接口指针作为指针并通过引用传递它们并不是非常有用。您可以将它们包装在智能指针类中,以便Release()调用是自动的。通过引用传递智能指针对象是好的,它与COM没有任何关系。
它可能在COM服务器中有所不同。您通常使用实现COM接口的C++类实现对象。如果该服务器中的代码需要对该对象的引用,那么传递一个对C++对象的引用是有意义的。这只是C++中引用的标准用法,与COM没有任何关系。
相关问题
- 1. 将字符串[]作为对象引用传递给COM对象
- 2. 作为接口传递对象引用
- 3. 块和传递对象作为参数
- 4. 在模块之间传递对象引用
- 5. 将VBA模块转换为COM对象
- 6. 传递COM对象作为参数在C#
- 7. Node.js的引用错误而传递对象的要求模块
- 8. 如何传递服务对象/模块作为ruby参数
- 9. 传递对象VBA使用COM互
- 10. 在另一个对象内部传递对象引用
- 11. 如何将COM对象作为IntPtr传递给P/Invoke方法?
- 12. 将函数作为参数传递给COM对象函数
- 13. 传递模块导出的对象
- 14. 传递对象引用
- 15. 传递对象作为OleVariant
- 16. 在对象中使用单引号或作为参考传递
- 17. 在C++中将临时对象作为非const引用传递
- 18. 传递新对象或对象引用
- 19. 从COM库传递对COM接口的引用
- 20. 将对象内的对象作为参数传递给函数
- 21. 将对象传递给COM方法
- 22. 将对象模型作为单个对象传递给ArrayController
- 23. 访问被引用对象传递的引用对象传递的变量
- 24. 将函数对象引用作为序列化的json传递
- 25. 如何传递参数作为模块
- 26. 如何在JavaScript中引用可以传递到浏览器外的对象(COM)
- 27. 在asp.net mvc中传递对象内部对象时的行为?
- 28. 传递使用RMI的对象引用
- 29. 传递对象为环回模式
- 30. 如何传递一个Ruby块内的对象方法作为参数?