c语言模拟实现c++的继承和多态
来源:互联网 发布:疯狂淘宝李涛微博 编辑:程序博客网 时间:2024/06/05 02:56
因为c++的继承和多态是面向对象的,需要用类实现,而c语言没有类,所以就只能选择结构体。但是结构体中不能定义函数,所以可以使用函数指针来实现c++的成员函数。
typedef void (*FUN)();struct A{ FUN fun; int a;};struct B{ A _a; int b;};void fA() { cout<<"A:fun()"<<endl;}void fB() { cout<<"B:fun()"<<endl;}void FunTest(){ A a; B b; a.fun = fA; b._a.fun = fB; A* pa = &a; pa->a = 2; pa->fun(); cout<<"A a = "<<pa->a<<endl; pa = (A*)&b; pa->a = 3; pa->fun(); cout<<"B a = "<<pa->a<<endl;}
阅读全文
0 0
- c语言模拟实现c++的继承和多态
- C语言模拟实现C++中的继承和多态
- C语言模拟实现继承和多态
- C语言模拟实现C++继承和多态
- C语言如何模拟C++实现继承和多态
- C语言模拟实现C++中的继承和多态
- C语言模拟实现C++的继承与多态
- C语言模拟实现C++的继承与多态
- C语言模拟实现C++的继承多态
- C语言模拟实现C++的继承多态
- c语言模拟实现c++的继承多态
- C语言模拟实现C++的继承与多态
- 模拟继承和多态--C语言模式实现C++继承和多态
- C语言实现继承和多态
- C语言实现继承和多态
- C语言实现继承和多态
- C语言实现继承和多态
- C语言实现继承和多态
- Eclipse连接数据库时出现Could not connect to New SQL Server
- 醒醒吧,这世界上根本没有稳定的工作
- 事物—事物四大特性
- 设计模式之禅笔记-门面模式
- CSU-ACM2017暑期训练5-三分 E
- c语言模拟实现c++的继承和多态
- CentOS下的Nginx安装配置
- 车牌识别资料整理
- Linux crontab 用法分析
- LeetCode 617. Merge Two Binary Trees
- dav-loading 专辑
- 【HDU1222】 Wolf and Rabbit(GCD)
- 机器学习笔记(六) 决策树
- Spring框架整合测试时出现错误