gpt4 book ai didi

c++ - ComPtr 与 CComPtr,As 与 QueryInterface

转载 作者:行者123 更新时间:2023-12-01 14:04:42 30 4
gpt4 key购买 nike

我只想知道 ComPtr 之间的确切区别和 CComPtr ,以及是否 ComPtr::As()CComPtr::QueryInterface() 的类似物?
我阅读了两者的文档,但这个问题没有明确的答案......

最佳答案

what exact difference between ComPtr and CComPtr



它们只是来自不同框架的 COM 接口(interface)智能包装器。 ComPtr是 Windows 运行时 C++ 模板库 (WRL) 的一部分。 CComPtr是事件模板库 (ATL) 的一部分。它们为各自的框架服务于类似的目的 - 提供自动引用计数和 refcount-safe 类型转换。但是您不应该将它们互换使用。如果您正在编写 WRL 代码,请使用 ComPtr .如果您正在编写 ATL 代码,请使用 CComPtr .

whether ComPtr::As() is analogue of CComPtr::QueryInterface()?



是的,因为 As()只需调用 QueryInterface()内部。

关于c++ - ComPtr 与 CComPtr,As 与 QueryInterface,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60560832/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com