c++进阶笔记(继承下的类型转换、虚函数表、运算符重载、模板

c++进阶笔记(继承下的类型转换、虚函数表、运算符重载、模板

  • 一 继承下的类型转换
  • 二 虚函数表
  • 三 运算符重载
  • 四 模板

一 继承下的类型转换

  • c++继承:
    c++支持多继承,也就是一个子类继承自多个父类;
  • 继承相关的类型转换:
    在使用中父子类型的继承是泛型的一种,通常一个类的指针可以通过类型转换表示多种类型;c++类对象类型转换有两种方式static_cast和dynamic_cast;
  1. static_cast 是静态转换类型
    pA为A类型对象指针,pB为B类型对象指针,注意为指针;
    pA = static_cast(pB);
  2. dynamic_cast 是动态转换类型,带类型检测
    pA为A类型对象指针,pB为B类型对象指针,注意为指针;
    pA = dynamic_cast (pB);
  3. 区别:
    上行(子–>父), 无差别
    下行 (父–>子),dynamic_cast更安全些,这里的安全指内存使用上的可靠、可预期性;在转换时子类中通常包含更多的成员,因此转换中父类到子类一些成员存在空异常;

二 虚函数表

三 运算符重载

四 模板

你可能感兴趣的:(语言-c++,c++,c语言)