1
pybind11로 파이썬 바인딩을 생성하려고합니다. C++ 인스턴스에서 메모리가 처리되는 C++ 인스턴스를 참조합니다. 내가 파이썬 example.dog
사이의 링크를 만드는 방법에 붙어pybind11에서 C++ 할당 된 객체 참조하기
import <pybind11/pybind11>
struct Dog {
void bark() { printf("Bark!\n"); }
};
int main()
{
auto dog = new Dog;
Py_Initialize();
initexample(); // Initialize the example python module for import
// TBD - Add binding between dog and example.dog .
PyRun_StringFlags("import example\n"
"\n"
"example.dog.bark()\n" // Access the C++ allocated object dog.
, Py_file_input, main_dict, main_dict, NULL);
Py_Finalize();
}
와 C++ dog
변수 : 여기에 몇 가지 예제 코드입니다.
나는 Dog
의 새로운 인스턴스를 할당 할 것이기 때문에 py:class_<Dog>.def(py::init<>())
을 사용할 수 없습니다. 이것은 내가 원하는 것이 아닙니다.