c++ - Python - 如何检查弱引用是否仍然可用

标签 c++ python reference weak

我正在将一些 weakrefs 从 Python 传递到 C++ 类,但是 C++ 析构函数在真实对象已经死亡时积极尝试访问 ref,显然它崩溃了......

是否有任何 Python C/API 方法来查明 Python 引用是否仍然存在或任何其他已知的解决方法?

谢谢

最佳答案

来自 Python C API文档:

PyObject* PyWeakref_GetObject(PyObject *ref)
Return value: Borrowed reference.
Return the referenced object from a weak reference, ref. If the referent is no longer live, returns None. New in version 2.2.

关于c++ - Python - 如何检查弱引用是否仍然可用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2993393/

相关文章:

c++ - C++ 中的别名和引用是一回事吗?

c++ sort 会崩溃,而 stable_sort 不会,但两者都不起作用

c++ - 什么时候使用空指针?

c++ - 在不知道大小的情况下在 header 中声明结构数组

python - 如何用python中的另一个列表替换一个列表?

c++ - 没有 () 的访问器,或对成员变量的 const 引用

c++ - 如何置换 boost::adjacency_list 中的节点?

python - 使用 HTTP 代理 - Python

python - Twitter用户名的正则表达式

c++ - 如何在 C++ 中为变量创建全局常量别名