假设我已经在C/C++代码中分配了一个C风格的双打动态数组,因此我有:
@H_502_7@
@H_502_7@
double *x; //Pointing to beginning of allocated memory int size; //Size of array@H_502_7@是否有可能编写lua代码(甚至是用于lua的C/C++代码),以便lua的C/C++嵌入式实例能够在数组上的“视图”元素上有效地读/写? @H_502_7@我只需要支持以下C操作: @H_502_7@
double y = x[2]; //Reading x[2] = 3.0; //Writing int vecSize = x.size(); //Size of array@H_502_7@不需要内存管理(也不需要).
解决方法
当然,将指针导出为userdata并设置__index和__newindex元方法.