1
Я пытаюсь обернуть класс Cube
с Boost.Python, которая имеет подпись следующего вида:Boost.Python преобразования питона кортеж `станд :: tuple` или` станд :: pair`
void insert(const std::pair< int, int>& x){ ... do something .. }
, если я просто обернуть этот метод следующим образом:
.def("append", &Cube::insert, with_custodian_and_ward<1,2>())
Я получаю следующее сообщение об ошибке в Python:
ArgumentError: Python argument types in
cube.append(cube, list)
did not match C++ signature:
append(Cube {lvalue}, std::__1::pair<unsigned long, unsigned long>)
, когда я набираю:
cube.append((1,2))
Я не уверен, как правильно преобразовать тип python в тип C++. Я тоже не могу найти подходящий пример.