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类型。后缀操作符函数没有使用它的参数。它的参数只是用来区分前缀与后缀函数调用。如果你没有在函数里使用参数,许多编译器会显示警告信息,很令人讨厌。为了避免这些警告信息,一种经常使用的方法时省略掉你不想使用的参数名称。当处理用户定义的类型时,尽可能地使用前缀,因为它的效率较高。
C++运算符重载
本文介绍了C++中自增和自减运算符的重载方法,包括前缀和后缀形式的区别,以及如何实现这两种形式。对于用户定义的类型,推荐使用前缀形式以提高效率。
893

被折叠的 条评论
为什么被折叠?



