c++ - SWIG C++ 到 Python : Warning(362): operator= ignored

标签 c++ python swig

我正在将 C++ 类导出到 Python,我注意到在编译期间,SWIG 发出了以下警告:

Warning(362): operator= ignored

我不确定为什么运算符会重载,因为它在 SWIG documentation 中说,SWIG 能够处理赋值运算符等运算符

我的类没有什么特别之处,它是这样声明的:

class Foo
{
public:
    Foo();
    Foo& operator= (const Foo&); 
    // etc ..
};

为什么 SWIG 无法为赋值运算符生成包装代码,我该如何解决这个问题?

最佳答案

python 中没有赋值(原始类型除外),只有指针赋值。如果你想创建一个拷贝,你需要一个特殊的复制功能。

关于c++ - SWIG C++ 到 Python : Warning(362): operator= ignored,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8102244/

相关文章:

c++ - 共享头文件的正确命名是什么

c++ - 是否有可能为模板化基类提供专门的类层次结构,但仍然利用它们之间的多态性?

python - 如何将字符串转换为列表?

java - SWIG 在 Java 中包装 boost::optional<>

c++ - 使用 const 限定符获取对象私有(private)属性的问题

c++ - 替换大文件中的字符串

python - 从 defaultdict 中,找到具有最高值的键对

python - 可以对回文程序进行哪些可能的改进?

python - glibc 检测到 *** python : double free or corruption (! prev) SWIG

python - 如何使用 SWIG 生成跨平台界面?