重载运算符参数

时间:2015-06-07 23:48:07

标签: c++ parameters operators overloading

我想知道重载运算符可以在C ++中使用多少个参数?

我已经看到运营商同时接受一个和两个参数,所以我想知道他们是否可以同时使用两个参数,特别是-<<运算符。

2 个答案:

答案 0 :(得分:1)

<<总是需要一个参数。例如。使用x << yx将调用实例operator<<()y将成为其参数。当然,您可以使用y的不同类型来重载运算符,但始终只有一个。

-运算符有两种风格,确实超载了不同数量的参数:

  1. 一元(-x
  2. 二进制(x - y

答案 1 :(得分:0)

对于减号运算符,它只能采用一个参数:

object& operator-(const object &ref); //please note the syntax and use of const

对于&lt;&lt;运算符(称为ostream),你像这样重载它,它需要两个参数:

friend ostream& operator<<(ostream &str, const object &ref);

希望能回答你的问题。