c++动态联编和静态联编
来源:互联网 发布:音画同步软件 编辑:程序博客网 时间:2024/05/16 09:39
将一个调用函数者联结上正确的被调用函数,这过程叫做函数联编。c++中的联编分两种,分为静态联编和动态联编。
为加virtual时是静态联编;加入virtual是动态联编。只有在使用指针或者引用时,才能实现在运行时的动态联编。
#include<iostream>#include<stdlib.h>using namespace std;class poser{public: virtual void beast()const{ cout << "一般选手一拳的力量为260磅" << endl; }//说明为虚函数,指针指向哪个对象,就相应调用哪个对象的函数。protected: int age;};class ali :public poser{public: void beast()const{ cout << "阿里一拳的力量为420磅" << endl; }};class lewis :public poser{public: void beast()const{ cout << "刘易斯一拳的力量为480磅" << endl; }};class tyson :public poser{public: void beast()const{ cout << "泰森一拳的力量为500磅" << endl; }};class holy :public poser{public: void beast()const{ cout << "霍利一拳的力量为350磅" << endl; }};void main(){ //poser*a[5]; poser*p; int choice, i; for (i = 0; i < 5; i++) { cout << "(1)阿里(2)刘易斯(3)泰森(4)霍利" << endl; cin >> choice; switch (choice) { case 1:p = new ali; break; case 2:p = new lewis; break; case 3:p = new tyson; break; case 4:p = new holy; break; default:p = new poser; break; } //a[i] = p; //a[i]->beast(); p->beast(); } system("pause");}
总结:
在继承中,只有当使用指针或者引用的方式来调用虚函数时,虚函数才能发挥多态性的作用。
只有被说明为虚函数的那个成员函数才具有多态性。
0 0
- C++:静态联编和动态联编
- C++:静态联编和动态联编
- C++:静态联编和动态联编
- C++:静态联编和动态联编
- C++:静态联编和动态联编
- C++:静态联编和动态联编
- 静态联编和动态联编
- 静态联编和动态联编
- 动态联编 和 静态联编
- 静态联编和动态联编
- 静态联编和动态联编
- 静态联编和动态联编
- 动态联编 和 静态联编
- 静态联编和动态联编
- 静态联编和动态联编
- 静态联编和动态联编
- 静态联编和动态联编
- 静态联编和动态联编
- 第三方登陆——OAuth2.0协议
- GLSL 色彩特效
- awk脚本
- 改造ueditor 在线图片功能 添加 删除 功能
- 使用 async 控制并发
- c++动态联编和静态联编
- 之前写的链表的增删改查
- C语言内存浅谈
- java 时间格式转换
- Cordova跨平台开发入门
- Latex参考文献引用顺序排序
- 使用Google Test的一个简单例子
- Qt之QDesktopServices
- Leetcode 145. Binary Tree Postorder Traversal