在给出的示例中,最直接的方法是在拥有所需信息时定义结构。
一种简单的方法是在要使用的位置创建类,而不是在模块根目录创建类-例如,可以将
class主体放在函数中,该函数将充当工厂-我认为这是最可读的方式。
import ctypes as cclass Point(c.Structure): _fields_ = [ ('x',c.c_double), ('y',c.c_double), ('z',c.c_double) ]def points_factory(num_points): class Points(c.Structure): _fields_ = [ ('num_points', c.c_uint32), ('points', Point*num_points) ] return Points#and when you need it in the pre:Points = points_factory(5)
抱歉-是C代码将为您“填充”值-并非答案。将发布另一种方式。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)