为了账号安全,请及时绑定邮箱和手机立即绑定
  • class

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

    2020-01-28

  • RTTI图示

    http://img1.sycdn.imooc.com//5e211b4e0001a7d519201080.jpghttp://img1.sycdn.imooc.com//5e211b5f00017a2119201080.jpg

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

    2020-01-17

  • typeid注意事项:

    type_id返回一个type_info对象的引用;

    如果想通过基类的指针获得派生类的数据类型,基类必须带有虚函数;

    只能获取对象的实际类型

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

    2020-01-17

  • 使用dynamic_cast注意事项:

    只能应用于指针和引用的转换;

    要转换的类型中必须包括虚函数;

    转换成功返回子类的地址,失败返回NULL

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

    2020-01-17

  • RTTI:运行时类型识别

    if(typeid(*obj).name() == typeid(Bird))

    Bird *bird = dynamic_cast<Bird *>(obj)

    dynamic_cast注意事项:

      只能应用于指针和引用的转换,不能是对象;

      要转换和被转换的类型中必须包含虚函数;

      转换成功返回子类地址,失败返回NULL;

    type_id注意事项:

      返回一个type_info对象的引用;

      如果想通过基类的指针获得派生类的数据类型,基类必须带有虚函数;

      只能获取对象的实际类型(不能传入对象指针获取指向对象的实际类型);

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

    2020-01-03

  • 仅含有纯虚函数的类叫接口类,没有数据成员。

    查看全部
    0 采集 收起 来源:[C++]接口类

    2020-01-03

  • 纯虚函数:virtual int func() = 0;不需要去实现函数的时候用。

    含有纯虚函数的类叫抽象类。哪怕只含有一个纯虚函数也叫抽象类。

    不允许实例化抽象类对象。

    抽象类的子类也可以是抽象类。

    抽象类的子类只有把抽象类当中的所有纯虚函数都做了实现,这个子类才可以实例化对象。

    查看全部
  • 虚继承:菱形继承,构造D对象时,不希望实例化2个A。

    虚函数:多态,父类指针下命令,希望子类执行不同的动作。如果父类实现了虚构函数,子类可以实现也可以不实现该虚构函数。

    虚析构函数:防止内存泄漏,父类指针指向子类对象,delete父类指针,希望能同时执行父类和子类的析构函数。

    查看全部
  • delete 父类指针:只调用父类的析构函数,除非用virtual(虚析构函数)

    delete 子类指针:既调用父类析构函数,又调用子类析构函数

    virtual不能修饰普通函数(不在类里面的函数)、静态成员函数、内联函数(inline会失效)、构造函数。

    查看全部
  • typeid(RTTI)的注意事项

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

    2019-12-08

  • dynamic_cast(RTTI)的注意事项

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

    2019-12-08

  • 纯虚函数就是用来表示目的不明确的函数

    查看全部
  • 纯虚函数的构造样式

    查看全部
  • delete 后加父类指针只能执行父类的析构函数,后加子类指针,既能执行父类析构函数,又能执行子类析构函数

    查看全部
  • catch(类型 &e)

    可将抛出值打印出来

    查看全部

举报

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

微信扫码,参与3人拼团

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

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