c++ - 运算符重载 C++ +=

标签 c++ operator-keyword

我有class ItemItem itemsint q。我正在尝试创建一个重载+=的函数。我需要好友功能吗?还是必须是成员(member)?

主程序中的语句是

             items+=q;

在类 Item 头文件中:

   friend Item operator+=(const Item&, int&);

在类 Item cpp 文件中:

    Item operator+=(const Item& items, int& q)
    {
         items+=q;
         return items;
    }

所以编译器说“+=”不匹配

最佳答案

关于c++ - 运算符重载 C++ +=,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38464560/

相关文章:

c++ - 在同一个套接字上调用 shutdown 和 closesocket 两次

c++ - 为什么 operator<< 的重载必须通过引用返回?

c++ - 如何重载运算符==?

c++ - dynamic_cast 在内部是如何工作的?

c++ - 无法使用 boost enable_if 匹配模板方法

c++ - Operator() 作为下标 (C++)

overloading - 如何在编程语言中消除对象/类之间的运算符定义歧义?

c++ - 关于 C++ 格式化输出的查询

c++ - 不同版本的 C++ 库

python - 在 Python 中暂停执行