itgle.com

对于常成员函数,下面描述正确的是( )。A.类的成员函数可以操作常对象B.类的成员函数不能操作常对象C.只有常成员函数可以操作常对象D.在常成员函数中,常对象可以被更新

题目

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

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

B.类的成员函数不能操作常对象

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

D.在常成员函数中,常对象可以被更新


相似考题
参考答案和解析
正确答案:C
更多“对于常成员函数,下面描述正确的是()。A.类的成员函数可以操作常对象B.类的成员函数不能操作常对象 ”相关问题
  • 第1题:

    以下四个关于类的访问控制的描述哪一个是错误的

    A、子类不能访问其父类的私有数据成员和成员函数

    B、子类的对象不能访问其父类的保护数据成员或者成员函数

    C、类的对象不能访问类的保护数据成员或者成员函数

    D、类的成员函数不能访问类中的私有数据


    参考答案:D

  • 第2题:

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

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

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

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

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


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

  • 第3题:

    下面描述正确的是( )。

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

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

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

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


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

  • 第4题:

    下面对于友元函数描述正确的是( )。

    A.友元函数的实现必须在类的内部定义

    B.友元函数是类的成员函数

    C.友元函数破坏了类的封装性和隐藏性

    D.友元函数不能访问类的私有成员


    正确答案:C
    友元函数的定义既可以在类内部进行,也可以在类外部进行。它提高了程序的运行效率,但破坏了类的封装性和隐藏性,使得类的非成员函数可以访问类的私有成员。

  • 第5题:

    在类中定义和实现的函数称为( )。

    A.静态成员函数

    B.内联函数

    C.常成员函数

    D.虚函数


    正确答案:B

  • 第6题:

    常对象需要引用常成员函数,而不能引用非常成员函数。


    正确答案:正确

  • 第7题:

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


    正确答案: 常对象不可以引用非常成员函数。非常对象可以引用常成员函数。

  • 第8题:

    简述类中使用常对象和常成员函数需要注意的问题。


    正确答案:(1)常对象在说明时必须进行初始化,而且不能被更新。常对象还可以作为类的成员;
    (2)const是函数类型的一个组成部分,因此在函数实现部分也要带有const关键字;
    (3)在常成员函数里不能更改所属类的数据成员,也不能调用该类中没有用const修饰的类的成员函数;
    (4)常对象只能调用它的常成员函数,而不能调用其他的成员函数;
    (5)const关键字可以用于进行函数重载的区分。其重载的原则是:常对象只能调用常成员函数,一般对象调用一般成员函数。

  • 第9题:

    问答题
    简述类中使用常对象和常成员函数需要注意的问题。

    正确答案: (1)常对象在说明时必须进行初始化,而且不能被更新。常对象还可以作为类的成员;
    (2)const是函数类型的一个组成部分,因此在函数实现部分也要带有const关键字;
    (3)在常成员函数里不能更改所属类的数据成员,也不能调用该类中没有用const修饰的类的成员函数;
    (4)常对象只能调用它的常成员函数,而不能调用其他的成员函数;
    (5)const关键字可以用于进行函数重载的区分。其重载的原则是:常对象只能调用常成员函数,一般对象调用一般成员函数。
    解析: 暂无解析

  • 第10题:

    单选题
    由于常对象不能被更新,因此(  )。
    A

    通过常对象只能调用它的常成员函数

    B

    通过常对象只能调用静态成员函数

    C

    常对象的成员都是常成员

    D

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


    正确答案: B
    解析:
    常对象使用const关键字修饰,不能被更新。常对象只能调用常成员函数而不能调用其它成员函数。

  • 第11题:

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

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

    B

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

    C

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

    D

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


    正确答案: B
    解析:
    C++中使用const关键字来说明函数称为常成员函数,常
    成员函数不能更新对象中的数据成员。

  • 第12题:

    单选题
    下列有关类成员的叙述中,正确的是(  )。
    A

    友元函数是类的成员函数

    B

    类成员的默认访问权限是私有的

    C

    类成员函数必须声明为公有的

    D

    类的静态数据成员不能是常成员


    正确答案: B
    解析:
    A项错误,类的友元函数可以直接访问该类的所有成员,但它不是类的成员函数;B项正确,类的数据成员和成员函数的默认访问权限是私有的;C项错误,类成员函数的访问权限可以声明为公有、保护、私有;D项错误,静态数据成员的声明是使用关键字static,它可以是常成员。

  • 第13题:

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

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

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

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

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


    参考答案:D

  • 第14题:

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

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

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

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

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


    正确答案:A

  • 第15题:

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

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

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

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

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


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

  • 第16题:

    下列有关类成员的叙述中,正确的是( )。

    A.友元函数是类的成员函数

    B.类成员的默认访问权限是私有的

    C.类成员函数必须声明为公有的

    D.类的静态数据成员不能是常成员


    正确答案:B
    友元函数是指某些虽然不是类成员却能访问类的所有成员的函数,故友元函数不足类的成员函数。类成员的默认访问权限是私有的,类的成员函数¨r以是3种权限中的一种,静态数据成员可以为常成员。故本题答案为8。

  • 第17题:

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

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

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

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

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


    正确答案:A

  • 第18题:

    下列哪一种顺序是派生类构造函数正确的调用其它构造函数顺序。()

    • A、基类构造函数—>对象成员所在类的构造函数—>派生类自己的构造函数初始化自定义数据成员
    • B、基类构造函数—>派生类自己的构造函数初始化自定义数据成员—>对象成员所在类的构造函数
    • C、派生类自己的构造函数初始化自定义数据成员—>对象成员所在类的构造函数—>基类构造函数
    • D、对象成员所在类的构造函数—>派生类自己的构造函数初始化自定义数据成员—>基类构造函数

    正确答案:A

  • 第19题:

    下列关于类的包含描述正确的是()

    • A、可以使用赋值语句对对象成员进行初始化
    • B、可以使用“参数初始式”调用成员类的构造函数初始化对象成员
    • C、被包含类可以访问包含类的成员
    • D、首先执行自身构造函数,再调用成员类的构造函数

    正确答案:B

  • 第20题:

    关于C++/JAVA类中static 成员和对象成员的说法正确的是()。

    • A、static 成员变量在对象构造时生成
    • B、static 成员函数在对象成员函数中无法调用
    • C、虚成员函数不可能是static 成员函数
    • D、static 成员函数不能访问static 成员变量

    正确答案:C

  • 第21题:

    判断题
    常对象需要引用常成员函数,而不能引用非常成员函数。
    A

    B


    正确答案:
    解析: 暂无解析

  • 第22题:

    单选题
    在创建派生类对象时,构造函数的执行顺序是()
    A

    对象成员构造函数―基类构造函数―派生类本身的构造函数

    B

    派生类本身的构造函数―基类构造函数―对象成员构造函数

    C

    基类构造函数―派生类本身的构造函数―对象成员构造函数

    D

    基类构造函数―对象成员构造函数―派生类本身的构造函数


    正确答案: C
    解析: 暂无解析

  • 第23题:

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

    正确答案: 常对象不可以引用非常成员函数。非常对象可以引用常成员函数。
    解析: 暂无解析