У меня есть функция, чья подпись
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?