计算机二级

下面关于常成员函数的说法中正确的是( )。A)常成员函数不能修改任何的数据成员B)常成员函数只能修改一般的数据成员C)常成员函数只能修改常数据成员D)常成员函数只能通过常对象来调用

题目

下面关于常成员函数的说法中正确的是( )。

A)常成员函数不能修改任何的数据成员

B)常成员函数只能修改一般的数据成员

C)常成员函数只能修改常数据成员

D)常成员函数只能通过常对象来调用

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

第1题:

关于const修饰符的说法中,错误的是

A.const既可以修饰成员函数,也可以修饰数据成员,还可以修饰对象

B.若const修饰了一个对象,则该对象中的所有数据成员都无法被更新

C.常对象无法调用一般成员函数

D.常成员函数只能被常对象调用,不能被一般对象调用


正确答案:D
解析:本题考察const修饰符的含义及其修饰不同对象的规则。常成员函数既能被常对象调用,也能被一般对象调用,一旦const修饰了一个对象,则对象的所有数据成员都无法更新。

第2题:

关于静态成员,正确的说法是()。

A、静态成员函数可以直接访问该类中的非静态成员

B、非静态成员函数不能直接访问该类中的静态成员

C、静态数据成员同其它数据成员一样通过构造函数进行初始化

D、静态成员在任何对象创建之前就已经创建


参考答案:D

第3题:

由于常对象不能被更新,因此 <br>

A .通过常对象只能调用它的常成员函数 <br>

B .通过常对象只能调用静态成员函数 <br>

C .常对象的成员都是常成员 <br>

D .通过常对象可以调用任何不改变对象值的成员函数 <br>


正确答案:A


第4题:

下列关于常类型的叙述中,正确的是( )。

A. 通过常对象可以调用一般成员函数

B.常对象中的成员函数都是常成员函数

C.可以通过成员函数修改常对象的状态

D.必须使用成员初始化列表显式初始化常数据成员


参考答案:D

第5题:

在下面有关静态成员函数的描述中,正确的是()。

A、在静态成员函数中可以使用this指针

B、在建立对象前,就可以为静态数据成员赋值

C、静态成员函数在类外定义时,要用static前缀

D、静态成员函数只能在类外定义


参考答案:B

第6题:

下列关于类定义的说法中,正确的是

A.类定义中包括数据成员和函数成员的声明

B.类成员的缺省访问权限是保护的

C.数据成员必须被声明为私有的

D.成员函数只能在类体外进行定义


正确答案:A
解析:本题考查的知识点是:类的定义。类中缺省的访问权限是私有的(private),所以选项B) 不正确:类的数据成员和函数成员的访问控制权限均可被声明为公有 (public)、私有(priate)和保护(protected)中的任意一种,所以选项C) 不正确;成员函数的实现即可以在类体内定义,也可以在类体外定义,所以选项D) 不正确。故本题应该选择A。

第7题:

对于常成员函数,下面描述正确的是( )。

A.常成员函数只能修改常数据成员

B.常成员函数只能修改一般数据成员

C.常成员函数不能修改任何数据成员

D.常成员函数只能通过常对象调用


正确答案:C
解析:对于常成员函数需要注意以下几点:①const是常成员函数类型的一个组成部分,因此在实现部分也要带const关键词。②常成员函数不更新对象的数据成员,也不能调用该类中没有用const修饰的成员函数。③如果将一个对象说明为常对象,则通过该对象只能调用它的常成员函数,而不能调用其他的成员函数。④当成员函数是常成员函数时,常对象和一般对象都可以调用它。

第8题:

( 12 )下列关于类定义的说法中,正确的是

A )类定义中包括数据成员和函数成员的声明

B )类成员的缺省访问权限是保护的

C ) 数据成员必须被声明为私有的

D )成员函数只能在类体外进行定义


正确答案:A

第9题:

常成员函数只能用来引用数据成员的值,而不允许改变数据成员的值。()

此题为判断题(对,错)。


参考答案:对

第10题:

关于常成员函数,下列说法中错误的是

A.常成员函数无法更新对象的数据成员,但可以访问其他类的公用数据成员或全局变量

B.常成员函数无法更新对象的数据成员,但是可以更新该对象的常数据成员

C.常成员函数既可以被常对象调用,也可以被一般对象调用

D.常成员函数不仅要在声明中用到const修饰符,在定义时也必须使用const修饰符


正确答案:B
解析:本题考察const修饰符的使用规则,只要考生理解了const表示“常”的意思就容易举一反三。根据被修饰内容的不同,const在修饰数据成员,成员函数和对象时,具有特定的含义。很明显,常数据成员是不能被修改的,这一点在选项B中被破坏,因此可以确定本题答案为B,如果考生对其他选项难于区分,同样可以得到正确答案。

更多相关问题