重载+运算符,链接列表

时间:2013-10-01 03:18:15

标签: c++ overloading add operator-keyword

在我的教科书中,他们举了一个重载+运算符的例子

Sales_item operator+ (const Sales_item& lhs, const Sales_item& rhs)
 {
   Sales_item ret(lhs);
   ret += rhs;
   return ret;
 }

但是当我为我的链表尝试它时,它告诉我它只能采取零或一个参数。

我没有看到什么,如果你不能拿2个参数,你甚至会如何添加2个对象?

1 个答案:

答案 0 :(得分:1)

如果你的operartor +是一个成员函数,它不需要两个参数,因为你调用operator + on的类的对象是左侧参数。但是你已经有了这样一个运算符:operator + =。正如chris和nims所建议的那样,在Sales_item类之外移动operator +。