对象可以直接获取到自身封装的 普通函数 , 如果要访问虚函数 , 需要增加一次寻址操作 , 因此 这里建议不需要将有 多态 需求的函数声明为 虚函数 ;
C++ 中 指向某类型对象的 指针 的 运算 ,...没有添加任何 成员函数 与 成员方法 , 那么子类指针 与 父类指针 的步长是相同的 ;
一、不建议将所有函数都声明为 virtual 虚函数
C++ 类中 , 每个 成员函数 都可以声明为 virtual...这里建议不需要将有 多态 需求的函数声明为 虚函数 ;
二、多态的理解层次
多态的理解层次 :
多态实现效果 : 相同的代码调用 , 有不同的表现形态 ; 父类指针 可 指向子类对象 , 使用父类指针...: C++ 中 指向某类型对象的 指针 的 运算 , 是 根据 指针类型 进行的 , 指针 自增 ++ , 指针的地址值 会增加 指针类型字节大小 ;
如 : 指针 Student* p , 其类型是...自定义的 Student 类型 , 则 p++ 的计算结果是 p 指针的地址值 加上 sizeof(*p) 对象的字节长度 ;
显然 父类 与 子类 对象 的 字节大小是不同的 , 在进行数组操作 ,