单选题在类中重载赋值运算符时,应将其声明为类的(  )。A 静态函数B 友元函数C 成员函数D 构造函数

题目
单选题
在类中重载赋值运算符时,应将其声明为类的(  )。
A

静态函数

B

友元函数

C

成员函数

D

构造函数

如果没有搜索结果或未解决您的问题,请直接 联系老师 获取答案。
相似问题和答案

第1题:

如果myclass类定义了拷贝构造函数和一个整型参数的构造函数,还重载了赋值运算符,那么语句myclassobj=100;会( )

A、调用拷贝构造函数

B、调用整型参数的构造函数

C、调用赋值运算符

D、引起编译错误


参考答案:B

第2题:

多数运算符既能作为类的成员函数重载,也能作为类的非成员函数重载,但运算符[]只能作为类的______函数重载。


正确答案:成员
成员 解析:此题考查的是运算符重载。在C++中,“=”、“[]”、“()”、“->”以及所有的类型转换符只能作为成员函数重载,不能重载为友元函数。

第3题:

在下列的各类函数中,()不是类的成员函数。

A、构造函数

B、析构函数

C、友元函数

D、拷贝构造函数


参考答案:C

第4题:

下列各种函数中,______ 不是类的成员函数。

A.构造函数

B.析构函数

C.友元函数

D.拷贝构造函数


正确答案:C
解析:构造函数、析构函数和拷贝构造函数都是类的成员函数。

第5题:

下列关于赋值运算符“=”重载的叙述中,正确的是

A.赋值运算符只能作为类的成员函数重载

B.默认的赋值运算符实现了“深层复制”功能

C.重载的赋值运算符函数有两个本类对象作为形参

D.如果已经定义了复制(拷贝)构造函数,就不能重载赋值运算符


正确答案:A
解析:=、[]、()、->以及所有的类型;转换运算符只能作为成员函数重载,A项正确。默认的赋值运算符只实现了浅层复制,B项错误。赋值运算符只能作为成员函数重载,形参表中只有一个参数,对应于第二操作数,C项错误。一个类中如果需要重载运算符 “=",通常也就需要定义自己特有的复制构造函数,反之亦然,故D项错误。

第6题:

下面关于自定义类的运算符重载的说法中,正确的是()。

A.类友元形式重载的运算符,重载函数的参数个数与运算符的实际操作数个数相同

B.类友元形式重载的运算符,重载函数中的this指针指向第一个运算数

C.类友元形式重载的运算符,重载函数中可以直接访问类中的私有成员

D.所有运算符都可以以类友元形式进行重载


正确答案:AC

第7题:

下面关于成员函数重载运算符和友元函数重载运算符相同的是( )。

A.成员函数和友元函数可重载的运算符是不相同的

B.成员函数和友元函数重载运算符时都需要用到this指针

C.成员函数和友元函数重载运算符时都需要声明为公有的

D.成员函数和友元函数重载运算符时的参数可能是相同的


正确答案:A

第8题:

非成员函数只有在声明为( ),才能访问这个类的所有private成员。

A.内联函数

B.纯虚函数

C.重载函数

D.友元函数


正确答案:D
解析:此属考查的是非成员函数对类的成员的访问权限,非成员函数只有在声明为类的友元函数才能访问这个类的所有private成员,否则是不能访问类的私有成员的。

第9题:

C++类体系中,不能被派生类继承的是( )。

A.构造函数

B.虚函数

C.静态成员函数

D.赋值操作函数


正确答案:A
解析:派生类不能够继承类的构造函数和析构函数。

第10题:

前置自增运算符++重载为类的友元函数的形式为【 】,重载为类的成员函数的形式为【 】。 (设类为A,类对象为a)


正确答案:friend A operator++(A &) a. operator++().
friend A operator++(A &) a. operator++().

更多相关问题