1
我有我通過SWIG暴露在我的Java二層C函數,並均與一個const void *的數據類型(「VAL)的輸入參數是必須爲addCategory功能uint8_t但對於功能的addAttribute一個字符。我目前在SWIG接口文件,使用%適用於映射常量無效* C類型爲短在Java端。有修改SWIG接口文件的方式來從頭文件同時支持一個char(字符串)和用於常量無效*輸入參數uint8_t(短)使用SWIG申請相同的C數據類型多種Java數據類型
C函數:
int
addCategory(query_t *query, type_t type, const void *val);
int
addAttribute(query_t *query, type_t type, const void *val);
痛飲接口文件:
%module Example
%include "stdint.i"
void setPhy_idx(uint32_t value);
%include "arrays_java.i"
void setId(unsigned char *value);
%{
#include "Example.h"
%}
%apply char * { unsigned char * };
%apply char * { void * };
%apply uint8_t { const void * }
%apply int32_t { int32_t * }
%include "Example.h"