gpt4 book ai didi

c - 在 vtbl 中命名函数指针

转载 作者:可可西里 更新时间:2023-11-01 11:30:24 26 4
gpt4 key购买 nike

抱歉,初学者的问题。

在非常好的文章中Com in plain C我读到这句话:

One requirement of a COM object is that the first three members of our VTable (i.e., our IExampleVtbl struct) must be called QueryInterface, AddRef, and Release.

这是真的吗?

如果更改名称,但参数、调用约定和返回值将相同怎么办?

你还在做这个吗?如果不是,为什么?

非常感谢您的回复。 (正面或负面。)

最佳答案

每个 COM 接口(interface)都必须派生自 IUnknown。它提供基本服务:内存管理(AddRef 和 Release)以及发现由 COM 对象实现的其他接口(interface)的能力(QueryInterface)。因此,COM 接口(interface)的 v 表总是以 3 个函数指针开始,指向这些方法的实现。函数的实际名称或它们是用什么语言编写的根本不重要,COM 只关心函数指针。

您可以随意命名实现函数。故意不使用 IUnknown 函数名称是不明智的。

关于c - 在 vtbl 中命名函数指针,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21483582/

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