Предоставление функции с аргументом char ** в boost python - PullRequest
0 голосов
/ 07 ноября 2018

У меня есть функция, чья подпись

parser create_parser(int, char **)

Где "парсер" - это класс. Теперь я хочу представить эту функцию моему модулю Python через boost Python, поэтому я сделал это:

boost::python::def ("create_parser", (parser(*)(int, char **)) create_parser);

Но когда я называю это в моем питоне как:

create_parser(2, ['a', 'b'])

Я получаю эту ошибку:

ArgumentError: Python argument types in
    create_parser(int, list)
did not match C++ signature:
    create_parser(int, char**)

Есть ли что-то специфическое для массива символов, которое мне нужно сделать, чтобы оно было доступно в коде Python?

...