为了账号安全,请及时绑定邮箱和手机立即绑定
  • RTTI必须转换的是引用或指针,并且父类要是纯虚函数 必须包含头文件#include <typeinfo>.否则报错 利用typeid(i).name()查出变量i的类型
    查看全部
  • typeid注意事项
    查看全部
    0 采集 收起 来源:[C++]RTTI

    2017-09-03

  • danamic_cast注意事项
    查看全部
    0 采集 收起 来源:[C++]RTTI

    2017-09-03

  • typeid
    查看全部
    0 采集 收起 来源:[C++]RTTI

    2017-09-03

  • 仅有纯虚函数的类称为接口类 没有数据成员,仅有成员函数,且为纯虚函数 没有析构函数
    查看全部
    0 采集 收起 来源:[C++]接口类

    2017-09-03

  • 纯虚函数 = 0后面要加分号
    查看全部
    0 采集 收起 来源:单元练习

    2017-09-03

  • 抽象类的子类中如果不将抽象类里的纯虚函数具体实现,那么这个子类仍是一个抽象类,不能实例化。必须要将父类所有的纯虚函数都具体实现才能实例化。
    查看全部
  • 含有纯虚函数的类就叫做抽象类 抽象类中可以有构造函数,析构函数,数据成员 抽象类无法实例化对象 当把抽象类的所有纯虚函数都做了实现,抽象类的子类才可以实例化对象 纯虚函数在虚函数表中的内容为0
    查看全部
  • 在C++中多态的实现是通过虚函数表实现的
    查看全部
    0 采集 收起 来源:练习题

    2017-09-03

  • 虚函数表指针占据的是每个对象的前四个内存单元 有虚函数时,对象中首先存虚函数表指针,再存数据成员地址,没有虚函数时,首先存的是数据成员的地址。<br> 有虚函数时,先使用指针 p 指向对象,访问的虚函数表指针,(*p)取得的是虚函数表地址,再使 p++ 就指向了数据成员,(*p)就能取得数据成员的值。
    查看全部
  • 当一个对象里面一个数据成员都没有的时候,是否意味着该对象不占用内存呢,显然不是,如图: shape对象没有数据成员,但是仍占用1个字节(因为对象至少要占用一个字节来声名自己的存在) 而circle中有一个int的成员,所以占了4个字节
    查看全部
  • 父类子类有同名函数时,有virtual修饰=覆盖,无virtual=隐藏
    查看全部
  • 在写析构函数的时候,最好是在析构函数的前面加上一个virtual的关键字,因为我们不知道在以后继承的时候子类会不会在析构函数中进行销毁指针和释放内存的操作,在父类的析构函数前面加上virtual可以使子类的析构函数被调用,防止内存泄漏
    查看全部
  • virtual关键字使用的限制: 1.不能使用普通的函数,只能是类的成员函数 2.不能使用于静态成员函数 3.不能使用于构造函数 4.不能适用于内联函数
    查看全部
  • 每个类的头文件中都加上宏定义,防止出现类重定义现象
    查看全部

举报

0/150
提交
取消
课程须知
本课程是C++初级课程 1、熟练掌握C++语言基础语法
老师告诉你能学到什么?
1、虚函数、虚析构函数、纯虚函数 2、抽象类和接口类 3、运行时类别异常 4、异常处理

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!