多态-

Posted sec875

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了多态-相关的知识,希望对你有一定的参考价值。

父类指针可以指向子类对象,是安全的(继承方式必须是public)

struct Person {
    int m_age;
};

struct Student : Person {
    int m_score;
};

int main() {
    // 父类指针 指向 子类对象
    Person *P = new Student();

    getchar();
    return 0;
}
  • 父类的只能访问部分空间,是安全的
    技术图片

  • 如果是子类的,真正访问过去时父类只有一个变量。造成溢出赋值到其他空间了
    技术图片

多态-传进去的对象不同,调用不同对象的函数就叫做多态

  • 我看视频,知道整个过程的发生,教的人图文并茂外加手指吸引注意力观察什么地方,最后写下描述的定义和结论,这叫学习。
  • 结果又来一人,他只看见我写的这个结论,外加下面代码,这像不像是课本上面的定理与文字解释?对不起,你不知道观察哪里去发现。
  • 我们需要深思,学习方式与学习环境。所以,你会发现我的大部分文章保留有原创的资料,为的就是尽量把学习环境给还原出来。
    ...
void liu(Animal *p) {
    p->speak();
    p->run();
}

int main() {    //子类的对象传给上面父类的指针
    liu(new Dog());
    liu(new Cat());
    liu(new Pig());
    ...
}

以上是关于多态-的主要内容,如果未能解决你的问题,请参考以下文章

java中封装,继承,多态,接口学习总结

多态性和动态铸造

基于的ssr 遗传多样性分析

什么是SNP(Single Nucleotide Polymorphism)?

多态的作用

面向对象-通过代码分析多态