C++规定后缀形式有一个int类型参数,当函数被调用时,编译器传递一个0做为int参数的值给该函数。注意以下编码范例中的const、A、A&、(int)。
class A {
public:
A& operator++(); // ++i
const A operator++(int); // i++
A& operator--(); // --i
const A operator--(int); // i--
...
};
前缀形式返回一个引用,后缀形式返回一个const类型。后缀操作符函数没有使用它的参数。它的参数只是用来区分前缀与后缀函数调用。如果你没有在函数里使用参数,许多编译器会显示警告信息,很令人讨厌。为了避免这些警告信息,一种经常使用的方法时省略掉你不想使用的参数名称。当处理用户定义的类型时,尽可能地使用前缀,因为它的效率较高。