|
可以将重载的一元运算符声明为非静态成员函数或非成员函数。 重载的一元成员函数不采用任何参数,因为它们隐式操作 this。 非成员函数使用一个参数进行声明。 声明这两种形式时,编译器遵循重载决策规则来确定要使用的函数(如果有)。
以下规则适用于所有前缀一元运算符。 若要将一元运算符函数声明为非静态成员函数,请使用以下声明形式:
return-type operator op ();
在此形式中,return-type 是返回类型,op 是上表中列出的运算符之一。
若要将一元运算符函数声明为非成员函数,请使用以下声明形式:
return-type operator op ( class-type );
在此形式中,return-type 是返回类型,op 是上表中列出的运算符之一,class-type 是要对其操作的参数的类类型。
后缀形式 ++ 和 -- 采用额外的 int 参数将其与前缀形式区分开来。 有关前缀和后缀形式 ++ 和 -- 的详细信息,请参阅递增和递减运算符重载。
|
|