• C++ 静态联编和动态联编初认识


    多态性:

    1. 静态联编多态性(编译时的多态性)通过函数,运算符的重载实现的(系统根据形参的个数来实现编译的多态性)
    2. 动态联编多态性(运行时的多态性)通过继承,虚函数(当运行时才能实现对象与函数的联编)C++规定:动态联编是在虚函数的支持下实现的

               条件:指向派生类对象的基类指针或者引用派生类对象的基类引用(调用虚函数)

    动态联编:

     1     #include <iostream>  
     2     using namespace std;  
     3     class shape{  
     4       public:  
     5         void virtual draw(){cout<<"I am shape"<<endl;}//这里设定了draw是虚函数  
     6         void fun(){draw();}  
     7     };  
     8     class circle:public shape{  
     9       public:  
    10         void draw(){cout<<"I am circle"<<endl;}//虽然没有说明circle类中的draw是虚函数,但是circle其实继承了virtual性质  
    11     };  
    12     void main(){  
    13         circle  oneshape;  
    14         oneshape.fun();  
    15     }  

    若没有virtual ,程序就会输出I am circle,因为有了虚函数进行了绑定,若没有,输出为 I am shape;若要深入弄懂链表,必须学习数据结构和汇编,

    其实虚函数的本质就是了个数据结构。也就是虚函数

    博客园的文章都是大学时写的,质量不太好。 我的新文章都会发布再新的 blog :https://blog.biyongyao.com 请大家关注哟!!
  • 相关阅读:
    Redis安装-Redis常用命令-redis.conf配置信息总结
    JVM--心得 OOM时的堆信息获取与分析
    JVM--心得 堆栈区域和GC的设置
    JVM--心得(加载 链接 初始化)
    JVM--心得概念
    我的Python之路:找一个幸运数
    springboot模板
    spring boot入门
    java自定义注解
    git集成idea
  • 原文地址:https://www.cnblogs.com/biyongyao/p/5037732.html
Copyright © 2020-2023  润新知