更多"下面关于成员函数重载运算符和友元函数重载运算符相同的是( )。"的相关试题:
[单项选择]下面关于成员函数重载运算符和友元函数重载运算符相同的是
A) 成员函数和友元函数可重载的运算符是不相同的
B) 成员函数和友元函数重载运算符时都需要用到this指针
C) 成员函数和友元函数重载运算符时都需要声明为公有的
D) 成员函数和友元函数重载运算符时的参数町能是相同的
[单项选择]个类中定义了成员函数、静态成员函数和友元函数,以下叙述中正确的是()。
A. 成员函数、静态成员函数和友元函数都具有this指针
B. 成员函数具有this指针,静态成员函数和友元函数没有this指针
C. 成员函数和静态成员函数具有this指针,但友元函数没有this指针
D. 成员函数和友元函数具有this指针,而静态成员函数没有this指针
[单项选择]在重载运算符函数时,下面运算符必须重载为类的成员函数的是( )。
A. +
B. -
C. ++
D. ->
[单项选择]将x+y*z中的“+”用成员函数重载,“*”是友元函数重载应写为( )。
A. operator+(operator*(y,z))
B. operator+(operator*(y,z))
C. operator+(x*(y,z))
D. x+(operator*(y,z))
[填空题]将x+y*z中的“+”用成员函数重载,“*”用友元函数重载应写为 【15】 。
[单项选择]将:x+y*z中的“+”用成员函数重载,“*”用友元函数重载应写为( )。
A. operator+(operator*(y, z))
B. operator+(operator*(y, z))
C. operator+(x*(y, z))
D. x+(operator*(y, z))
[单项选择]下面是重载为非成员函数的运算符函数原型,其中错误的是
A. Fraction operator+(Fraction,Fraction);
B. Fraction operator-(Fraction);
C. Fraction&operator=(Fraction&,Fraction);
D. Fraction&operator+=(Fraction&,Fraction);
[填空题]下面是复数类complex的定义,其中作为友元函数重载的运算符“--”的功能是将参数对象的实部减1,然后返回对该对象的引用;请补充完整。
class complex
{
private:
int real;
int imag;
public:
complex(int r=0,int i=0):real(r),imag(i){}
void show ( )
{
cout<<real<<(imag<0"-":"+")<<imag<<’i’;
}
______;
};
complex& operator -- (complex &c)
{
c.real --;
return c;
}
[单项选择]如果表达式++x/y中,++是作为友元函数重载的,/是作为成员函数重载的,则该表达式还可为()
A. (operator++(x) ).operator/(y)
B. (operator++(0) ).operator/(y)
C. operator/( (operator++(x,0) ),y)
D. operator/( (operator++(0) ),y)
[单项选择]如果表达式y*x++中,“*”是作为成员函数重载的运算符,“++”是作为友元函数重载的运算符,采用运算符函数调用格式时,该表达式应表示为( )
A. x.operator++(0).operator*(y)
B. operator*(x.operator++(0),y)
C. y.operator*(operator++(x,0))
D. operator*(operator++(x,0),y)
[单项选择]如果表达式y*x+十中,“*”是作为成员函数重载的运算符,“++”是作为友元函数重载的运算符,采用运算符函数调用格式,该表达式还可表示为
A. x.operator++(0).operator *(y);
B. operator * (x.operator++(0),y);
C. y.operator * (operator++(x,0))
D. operator * (operator++(x,0),y)