Boost Python 哈希
在Boost::Python里,有没有一个函数可以用来获取一个boost::python::object
的哈希值,也就是和Python的hash
函数一样的功能?我看了文档,但似乎没有提到相关内容。
1 个回答
2
在Python中,hash
的实现是通过C语言中的PyObject_Hash
来完成的。如果你有一个随机的对象obj
,你可以简单地调用:
long hash = PyObject_Hash(obj.ptr())
在boost::python::object
上,ptr()
方法会返回一个PyObject *
,这个指针对那个对象有一个借用的引用。
总的来说,CPython API中有很多内容并没有被boost::python
封装。直接调用这些内容其实也很简单。