gpt4 book ai didi

python - 在 ctypes 中继承 c_void_p 是否可以接受?

转载 作者:太空宇宙 更新时间:2023-11-04 06:38:28 28 4
gpt4 key购买 nike

我正在与一个返回不透明指针的库交互。子类化 c_void_p 以在 ctypes 中表示它并为 c_void_p 的这种特殊风格提供类型检查是否可以接受?

最佳答案

进行这种类型检查的一种简单方法可能是创建一些任意的 ctypes.Structure

class _Opaque(ctypes.Structure):
pass

声明相关函数的返回类型为指向该结构的指针

lib.f.restype = ctypes.POINTER(_Opaque)

以及再次接受这种指针的函数的参数类型:

lib.g.argtypes = [ctypes.POINTER(_Opaque)]

现在,ctypes 确保g 的参数是之前由f 返回的指针。 (请注意,我使用前导 _ 来标记 _Opaque 仅用于此模块。)

关于python - 在 ctypes 中继承 c_void_p 是否可以接受?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5030730/

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