25

我正在尝试访问该结构

template <int dim>
struct Data { 
  double X[dim];
  double Val[dim];
}; 

在赛通。我猜正确的语法应该是这样的:

cdef extern from "Lib.h" namespace "LIB":
    cdef struct Data[int dim]:
      double X[dim];
      double Val[dim];

但是,我收到语法错误。什么是正确的语法(如果可能的话)?

4

1 回答 1

3

将 struct 关键字替换为 cppclass 关键字。这应该会有所帮助。

  cdef extern from "Lib.h" namespace "LIB":
      cdef cppclass Data[int dim]:
        double X[dim];
        double Val[dim];

另请查看此线程:Cython 中的 C++ 结构继承

于 2013-08-12T14:26:17.000 回答