如何在SWIG中处理函数模板
How do I handle function templates in SWIG?
我在代码的下面一行中使用SWIG得到一个"输入语法错误"错误
template<typename T>
void print_vec(std::vector<T> vec, int length = -1);
在我的.i文件中,我包括以下行
%template(print_vec_int) print_vec<int>;
我做错了什么?
您正在编写C++代码,但告诉swig它是C。您需要将-c++
添加到swig命令行。
swig -o x_wrap.cc -c++ -python x.i
如果您使用SCons,则需要更新SWIGFLAGS环境变量:
env = Environment(SWIGFLAGS=['-c++', '-python'])
相关文章:
- 当函数模板参数是具有默认参数的类模板时,函数模板参数的推导如何执行
- 将重载的成员函数传递给函数模板
- C++17中函数模板中的静态数组初始化(MSVC 2019)
- 为什么 gcc 和 clang 为函数模板的实例化生成不同的符号名称?
- 具有常量引用参数的函数模板专用化
- std::span<const T> 作为函数模板中的参数
- 如何编写一个完美的缩写函数模板?
- 仅在函数模板中为那些定义了函数的类型执行函数
- 如何在C++中伪造虚拟可变参数函数模板?
- 以下代码中的函数模板有什么问题?
- 在 C++20 中是否不再允许在 std 中对程序定义类型的函数模板进行专用化?
- 将显式实例化的函数模板与转换匹配
- 使用定义函数模板别名
- 函数模板返回类型
- C++有什么方法可以在既不调用函数模板也不提供其模板参数的情况下引用函数模板?
- 处理值和指针的函数模板
- 如何处理虚拟模板函数,其中模板参数的数量在C++中是已知的
- C++:用于处理整数和字符串的函数模板
- 如何在SWIG中处理函数模板
- 在处理函数的部分模板专门化时,类型定义和参数包展开问题