Обтекание шаблона структуры С++ с использованием cython
Я пытаюсь получить доступ к структуре
template <int dim>
struct Data {
double X[dim];
double Val[dim];
};
в cython. Я предполагал, что правильный синтаксис должен выглядеть примерно так:
cdef extern from "Lib.h" namespace "LIB":
cdef struct Data[int dim]:
double X[dim];
double Val[dim];
Однако я получаю синтаксическую ошибку. Каков правильный синтаксис (если это возможно)?
Ответы
Ответ 1
Заменить ключевое слово struct на ключевое слово cppclass. Это должно помочь.
cdef extern from "Lib.h" namespace "LIB":
cdef cppclass Data[int dim]:
double X[dim];
double Val[dim];
Также посмотрите эту тему: Наследование С++ Struct в Cython