gpt4 book ai didi

c++ - 您应该如何阅读以下文档?

转载 作者:太空狗 更新时间:2023-10-29 20:18:09 24 4
gpt4 key购买 nike

来自 IDispatch::GetTypeInfoCount

The return value obtained from the returned HRESULT is one of the following: [S_OK -> Success], [E_NOTIMPL -> Failure]

底部的示例返回 E_INVALIDARGNOERROR

据我所知,E_INVALIDARG 不是S_OK,也不是NOERROR,那你怎么办?您是否检查无效指针?

似乎 COM 几乎是一切的基础,我找不到关于简单 IDispatch 正确行为的良好信息来源。您如何处理生产代码中的此类不一致?

最佳答案

对于 COM,您不应该检查特定的返回值,除非您确实需要对这些值进行特殊处理。相反,当您只需要知道调用是失败还是成功时,您应该使用 FAILED 或 SUCCEEDED 宏。即

HRESULT hr = ...;
if (FAILED(hr)) {
...

COM 调用通常会返回比文档中指定的范围更广的错误代码。被调用的函数不是唯一的错误来源。根据实际进行的调用(进程内、进程外、DCOM),COM 系统本身可以返回一大堆错误。

关于c++ - 您应该如何阅读以下文档?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4933457/

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