常对象可以引用非常成员函数吗?非常对象可以引用常成员函数吗?

题目
问答题
常对象可以引用非常成员函数吗?非常对象可以引用常成员函数吗?
如果没有搜索结果或未解决您的问题,请直接 联系老师 获取答案。
相似问题和答案

第1题:

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

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

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

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

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


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

第2题:

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

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


参考答案:对

第3题:

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

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

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

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

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


正确答案:A


第4题:

由于常对象不能被更新,所以( )。

A.利用常对象可以调用任何不改变对象值的成员函数

B.利用常对象只能调用静态成员函数

C.常对象的成员都是常成员

D.利用常对象只能调用它的常成员函数


正确答案:D
解析:如果一个成员函数没有声明为常成员函数,即使没有改变对象本身的成员值,也不能被常对象调用,所以A) 不正确。常对象除了口J以调用静态成员函数外,还可以调用常成员函数,所以B) 不正确。常对象中可以有非常成员函数,所以C)也不正确。常对象只能调用对象的常成员函数,而不调用普通成员函数,故D) 选项正确,

第5题:

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

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

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

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

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


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

第6题:

通常拷贝构造函数的参数是( )。

A.某个对象名

B.某个对象的引用

C.某个对象的指针

D.某个对象的成员


正确答案:B
解析:拷贝构造函数X(X&)是一种特殊的构造函数,由编译器调用来完成一些基于同—类的其他对象的初始化,拷贝构造函数的参数是某个对象的引用。

第7题:

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

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

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

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

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


参考答案:D

第8题:

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

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

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

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

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


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

第9题:

下面描述正确的是( )。

A.类的普通成员函数可以操作常对象

B.类的成员函数可以修改常对象

C.只有常成员函数才可以操作常对象

D.常对象可以被常函数更新


正确答案:C
解析:只有常成员函数才可以操作常对象,常对象不可更新。

第10题:

下列关于拷贝构造函数的参数表的说法正确的是 ______。

A.某个对象名的成员函数名

B.某个对象的数据成员名

C.某个对象的引用名

D.某个对象的指针名


正确答案:C