niusouti.com
更多“只有使用虚函数机制,才能_____________”相关问题
  • 第1题:

    如果派生类没有实现虚函数,那么它将使用它的基类的虚函数。()


    参考答案:正确

  • 第2题:

    在下列说法中,不正确的是()。

    A、静态成员函数不能利用this指针

    B、非静态成员可以使用this关键字

    C、虚机制在构造函数和析构函数中仍然可以很好的工作,以实现多态性

    D、构造函数和析构函数不接受任何参数,也不带有任何类型的返回值


    参考答案:CD

  • 第3题:

    当一个类的某个函数被说明为virtual时,该函数在该类的所有派生类中 ______。

    A.都是虚函数

    B.只有被重新说明时才是虚函数

    C.只有被重新说明为virtual时才是虚函数

    D.都不是虚函数


    正确答案:A

  • 第4题:

    关于虚函数,下列表述正确的是( )。

    A.如果重定义虚函数时使用了保留字virtual,则该重定义函数仍然是虚函数

    B.虚函数不得声明为静态函数

    C.虚函数不得声明为另一个类的朋友函数

    D.派生类必须重新定义基类的虚函数


    正确答案:B

  • 第5题:

    下列关于虚函数的描述中,正确的是( )。

    A.如果在重定义函数时使用了保留字virtual,则该重定义函数仍然是虚函数

    B.虚函数不得声明为静态函数

    C.虚函数不得声明为另一个类的友元函数

    D.派生类必须重新定义基类的虚函数


    正确答案:B
    解析:被关键词virtual说明的函数称为虚函数。对于虚函数有以下限制:
      ①只有类的成员函数才能说明为虚函数。这是因为,虚函数仅适用于有继承关系的类对象,所以普通函数不能说明为虚函数。
      ②静态成员函数不能是虚函数,因为静态成员函数不受限于某个对象。
      ③内联函数不能是虚函数,因为内联函数是不能在运行中动态确定其位置。即使虚函数在类的内部定义,编译时仍将其看作是非内联的。
      ④构造函数不能是虚函数,因为构造时对象还是一片未定型的空间。只有在构造完成后,对象才能成为一个类的名副其实的实例。  、
      ⑤析构函数可以是虚函数,而且通常说明为虚函数。说明虚函数的目的在于:使用 delete运算符删除一个对象时,能确保析构函数被正确地执行。这是因为设置虚析构函数后,可以利用动态联编方式选择析构函数。
      ⑥一般要求基类中说明了虚函数后,派生类说明的虚函数应该与基类中虚函数的参数个数相等,对应参数的类型相同。如果不相同,则将派生类虚函数的参数类型强制转换为基类中虚函数的参数类型。

  • 第6题:

    下列关于进程管理的叙述错误的是______。

    A.任何操作系统必须提供一种启动进程的机制,EXEC函数是在DOS中的机制

    B.CreateProcess函数可以在Windows中启动进程

    C.只有等到调用CreateProcess函数的程序执行结束后,CreateProcess才能返回,以便别的程序启动

    D.Windows和OS/2内存中有分时机制,进程中包含一个或多个执行进程


    正确答案:C
    解析:Windows和OS/2是多任务操作系统,它们所含的CreateProcess函数在调用后几乎能立即返回,以便更多程序可以被启动。内核中含有的分时器允许多道程序并发运行。

  • 第7题:

    编译时的多态性可以通过使用( )获得。

    A.虚函数和指针

    B.重载函数

    C.虚函数和对象

    D.虚函数和引用


    正确答案:C
    解析:采用一般类型的标示对象操作虚函数时,将采用静态联编方式调用虚函数。

  • 第8题:

    下面描述中,正确的是()

    • A、虚函数是没有实现的函数
    • B、纯虚函数是返回值等于0的函数
    • C、抽象类是只有纯虚函数的类
    • D、抽象类指针可以指向不同的派生类

    正确答案:D

  • 第9题:

    编译时的多态性可以通过使用()获得。

    • A、虚函数和指针
    • B、重载函数和析构函数
    • C、虚函数和对象
    • D、虚函数和引用

    正确答案:C

  • 第10题:

    单选题
    下列关于虚函数的描述,正确的是()。
    A

    静态成员函数可以是虚函数

    B

    构造函数不可以是虚函数

    C

    析构函数不可以是虚函数

    D

    内联函数可以是虚函数


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

  • 第11题:

    单选题
    一个类的层次结构中,定义有虚函数,并且都是公有继承,在下列情况下,实现动态联编的是()。
    A

    使用类的对象调用虚函数

    B

    使用类名限定调用虚函数,其格式如下:<类名>::<虚函数名>

    C

    使用构造函数调用虚函数

    D

    使用成员函数调用虚函数


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

  • 第12题:

    单选题
    编译时的多态性可以通过使用()获得。
    A

    虚函数和指针

    B

    重载函数和析构函数

    C

    虚函数和对象

    D

    虚函数和引用


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

  • 第13题:

    编译时的多态性通过使用()实现。

    A、构造函数

    B、虚函数

    C、重载函数

    D、析构函数


    参考答案:C

  • 第14题:

    下列关于虚函数的说法中,正确的是( )。

    A.如果在重定义虚函数时使用了保留字virtual,则该重定义函数仍然是虚函数

    B.虚函数不得声明为静态函数

    C.虚函数不得声明为另一个类的私有函数

    D.派生类必须重新定义基类的虚函数


    正确答案:B
    解析:使用虚函数时必须注意下列事项:①只有类的成员函数才能说明为虚函数。这是因为虚函数仅适用于有继承关系的类对象,所以普通函数不能说明为虚函数。②静态成员函数不能是虚函数,因为静态成员函数不受限于某个对象。③内联函数不能是虚函数,因为内联函数是不能在运行中动态确定其位置。即使虚函数在类的内部定义,编译时仍将其看作是非内联的。④构造函数不能是虚函数,因为构造时对象还是一片未定型的空间。只有在构造完成后,对象才能成为一个类的名副其实的实例。⑤析构函数可以是虚函数,而且通常说明为虚函数。说明虚函数的目的在于;使用delete运算符删除一个对象时,能确保析构函数被正确地执行。这是因为设置虚析构函数后,可以利用动态联编方式选择析构函数。⑥一般要求基类中说明了虚函数后,派生类说明的虚函数应该与基类中虚函数的参数个数相等,对应参数的类型相同。如果不相同,则将派生类虚函数的参数类型强制转换为基类中虚函数的参数类型。

  • 第15题:

    下列描述中正确的是( )。

    A.构造函数可以为虚函数,析构函数不可以为虚函数

    B.构造函数不可以为虚函数,析构函数可以为虚函数

    C.构造函数可以为虚函数,析构函数可以为虚函数

    D.构造函数不可以为虚函数,析构函数不可以为虚函数


    正确答案:B
    解析:构造函数不可以为虚函数,但可以调用虚函数;析构函数可以为虚函数。

  • 第16题:

    1.  实现运行时多态的机制是(     

    A)虚函数      B)重载函数    C)静态函数    D)模版函数


    A

  • 第17题:

    下列关于动态联编的叙述中,错误的是( )。

    A.动态联编的基础是虚函数

    B.动态联编时在运行时确定所调用的函数代码

    C.只有通过基类的指针或引用才能实现动态联编

    D.重载也是动态联编


    正确答案:D
    解析:重载是静态联编。

  • 第18题:

    下列关于进程管理的叙述中错误的是

    A.任何操作系统必须提供一种启动进程的机制,EXEC函数是在DOS中的机制

    B.CreateProcess函数可以在Windows中启动进程

    C.只有等到调用CreateProcess函数的程序执行结束后,CreateProcess才能返 回,以便别的程序启动

    D.Windows和OS/2内存中有分时机制,进程中包含一个或多个执行进程


    正确答案:C
    解析:Windows和OS/2是多任务操作系统,它们所含的CreateProcess函数在调用后几乎能立即返回,以便更多程序可以被启动。内核中含有的分时器允许多道程序并发运行。

  • 第19题:

    一个类的层次结构中,定义有虚函数,并且都是公有继承,在下列情况下,实现动态联编的是()。

    • A、使用类的对象调用虚函数
    • B、使用类名限定调用虚函数,其格式如下:<类名>::<虚函数名>
    • C、使用构造函数调用虚函数
    • D、使用成员函数调用虚函数

    正确答案:D

  • 第20题:

    余弦函数只有()谱图,正弦函数只有虚频谱图。


    正确答案:实频

  • 第21题:

    填空题
    余弦函数只有()谱图,正弦函数只有虚频谱图。

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

  • 第22题:

    单选题
    下面描述中,正确的是()
    A

    虚函数是没有实现的函数

    B

    纯虚函数是返回值等于0的函数

    C

    抽象类是只有纯虚函数的类

    D

    抽象类指针可以指向不同的派生类


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

  • 第23题:

    单选题
    正弦函数只有()频谱图,与纵轴奇对称。
    A

    B

    C

    A和B

    D

    复数


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

  • 第24题:

    单选题
    关于虚函数,以下说法正确的是(  )。
    A

    若在重定义虚函数时使用了virtual,则该重定义函数还是虚函数

    B

    虚函数不能声明为友元

    C

    子类必须重定义父类的虚函数

    D

    虚函数不能是static的


    正确答案: B
    解析:
    在C++语言中,虚函数可以是友元函数,但不能是静态成员。虚函数的重定义函数,无论是否使用virtual关键字,仍然是虚函数。