在C中看到以下模式很常见:
/* struct definition */
typedef struct {int x,y,z} vector_t;
/* Methods that always take defined struct as first argument */
int vector_add_scalar(vector_t *v, int s);
int vector_sub_scalar(vector_t *v, int s);
显然在OOP中,模拟是有一个矢量对象,然后上面的函数成为它的方法。我想知道的是使用SWIG将上述示例转换为其等效OOP的最佳方法。我应该在我的界面文件中从头开始定义一个类(在这种情况下,我不妨编写自己的绑定)?是否有我缺少的命令行选项?或者%extend
指令可能是我正在寻找的,尽管我看到的所有例子都涉及在接口文件中编写自己的代码?任何和所有输入将不胜感激!