-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塊內的對象方法作爲參數?