在 Cython 中访问 C++ 类的私有成员变量/函数
Posted
技术标签:
【中文标题】在 Cython 中访问 C++ 类的私有成员变量/函数【英文标题】:Access to private member variables/functions of a C++ class in Cython 【发布时间】:2016-07-08 20:08:34 【问题描述】:假设我有一个类 Foo:
class Foo
private:
std::string bar;
public:
Foo ()
Foo (const std::string& bar_) this->bar = bar_;
std::string get_bar () return this->bar;
;
还有一个 Foo python 包装器 FooWrapper.pyx:
from libcpp.string cimport string
cdef extern from "Foo.h":
cdef cppclass Foo:
Foo ()
Foo (string)
是否可以在.pyx文件中访问std::string bar
而不修改Foo?
【问题讨论】:
【参考方案1】:如果您无法在 C++ 中访问私有成员,那么您也无法在 Cython 中访问它。
您可以尝试这样的技巧来覆盖“private”关键字:https://***.com/a/424125
【讨论】:
以上是关于在 Cython 中访问 C++ 类的私有成员变量/函数的主要内容,如果未能解决你的问题,请参考以下文章