LINUX.ORG.RU

SIP: а как происходит преобразование типов данных между C++ и Python?

 , ,


0

2

Есть у меня C++ный класс. Хочу я сделать для него SIP-обёртку, чтобы дёргать его методы из Python'а.

Однако никак не могу найти никакой таблички соответствия между типами Python и типами C++. А таки хочется понять, в какой питоний тип будет сконвертирован какой С++ный аргумент.

Не сталкивался ли кто уже с такой проблемой?


блин, ну какого пня они назвали эту свою обертку SIP? у меня теперь каждый раз тег срабатывает. все ж блин знают что SIP это Session Initiation Protocol

upcFrost ★★★★★
()

Не совсем то что ты просил, но. возможно, тебе подойдёт Cython. Там, вроде, всё прозрачно с типами.

true_admin ★★★★★
()

Из ctypes импортни нужные тебе типы и используй их.

kachan ★★
()
Ответ на: комментарий от Yak

Те надо на c++ написать модуль/расширение для python. И использовать его из python кода. Если так, то вам см ссылку выше. Там все просто и подробно описано

samson ★★
()
Ответ на: комментарий от samson

Ну, кгм, почти. У меня есть библиотеки, уже написанные на C++, и я хочу сделать для них питонью обёртку, чтобы использовать их из Python.

Yak
() автор топика
Ответ на: комментарий от Yak

тогда вам сюда: https://habrahabr.ru/post/168083/ В этой статье как раз подробно описано то что вам нужно. Там особо сложного ничего нет, все расжевано подробно...

и сюда: http://www.boost.org/doc/libs/1_64_0/libs/python/doc/html/index.html

ну и сюда: https://www.google.ru/search?q=boost-python

ну и прислушайтесь к остальным советам, может что поинтереснее найдете.

samson ★★
()
Ответ на: комментарий от Sahas

двачую того, что посоветовал.

boost.python это лютый трешак со внезапным, иногда, поведением. Проще даже врукопашную переjуярить на АПИ петона, чем этот монстр тащить.

anonymous
()
Ответ на: комментарий от Sahas

да pybind11 - интересно. Тоже понравилось. На первый взгляд очень даже ничего...

samson ★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.