Использование Boost Python, чтобы обернуть массивы C ++ в массивы - PullRequest
2 голосов
/ 05 марта 2012

Предположим, у меня есть структура C ++

struct A {
  int* a; 
}

Где int * указывает на массив.Как мне выставить это на Python, который имеет как массив NumPy, с dtype = 'int'?

1 Ответ

1 голос
/ 06 марта 2012

Из вашего вопроса не совсем понятно, какое отношение имеет к этому boost :: python. Но если вы хотите просто представить массив для python в виде массива numpy, вы можете использовать PyArray_SimpleNewFromData .

Если вы хотите раскрыть всю структуру A с помощью boost :: python и `a 'как ее члена, используйте синтаксис boost :: python для свойств и предыдущую функцию для возврата представления массива вашей структуры , Обратите внимание, что вам нужно знать размер массива, чтобы открыть его для Python.

...