我在 myenum.h 中有一个简单的 C 枚举:
enum MyEnum {
ONE,
TWO,
THREE
};
问题是当我将它映射到 Python 时,我只能通过模块名称访问枚举,而不是通过 MyEnum。所以值 ONE、TWO、THREE 包含在我定义的任何其他函数中,而不是包含在 MyEnum 中。
我的 api.i 文件是:
%module api
%{
#include "myenum.h"
%}
%include "myenum.h"
我用 SWIG 生成
swig -builtin -python api.i
并将其导入 Python
import _api
现在我必须使用 _api 模块中的枚举值:
_api.ONE
_api.TWO
_api.THREE
虽然我想像使用它们一样
_api.MyEnum.ONE
_api.MyEnum.TWO
_api.MyEnum.THREE
有谁知道我怎么能做到这一点?