运算符函数调用格式的表达式“y/x++”与表达式“y.operator/(operator++(x,0))”的含义相同,由此可看出( )。

admin2021-02-22  30

问题 运算符函数调用格式的表达式“y/x++”与表达式“y.operator/(operator++(x,0))”的含义相同,由此可看出(    )。

选项 A、“/”和“++”都是作为成员函数重载的
B、“/”和“++”都是作为非成员函数重载的
C、“/”是作为成员函数重载的,  “++”是作为非成员函数重载的
D、“/”是作为非成员函数重载的,  “++”都是作为成员函数重载的

答案C

解析 运算符函数有两种调用形式,第一种是像一般函数那样用函数名调用,即y.operator*(z)或者operator*(y,z);另一种是通过运算符构成表达式,即y*z。因为“++”运算符既可以作为前缀运算符,又可以作为后缀运算符,所以重载这个运算符时,重载后缀“++”时必须多一个虚拟参数:int。
转载请注明原文地址:https://jikaoti.com/ti/UOh0FFFM
0

最新回复(0)