面向对象之继承,封装,多态c语言实现
来源:互联网 发布:巴西足球知乎 编辑:程序博客网 时间:2024/05/18 16:18
最近学习下,c语言实现 面向对象中的 继承,封装,多态方法。
继承:
#include <stdio.h>typedef struct _parent{ int dwparent;}Parent;typedef struct _child{ struct _parent childparent; int child;}Child;void fun(Parent *ptparent){ printf("the value : %d \n",((Parent*) ptparent)->dwparent);}; void main(void){ Child tchild; Parent tparent; tchild.childparent.dwparent = 222; tchild.child = 222;tparent.dwparent = 111;fun((Parent*)&tchild);fun((Parent*)&tparent);return;}
封装:
#include <stdio.h>struct tag_t;typedef void (*funhanle)(struct tag_t *);typedef struct tag_t{ int flag; funhanle handle;}T_Type;#define FUN_PRINT(A) printf("the flag is %d \n", A)void fun_1(T_Type *ptType){ ptType->flag = 1; FUN_PRINT(ptType->flag);}void fun_2(T_Type *ptType){ ptType->flag = 2; FUN_PRINT(ptType->flag);}void bulidType(T_Type *pt, funhanle pfun){pt->handle = pfun;}void main(){T_Type t; bulidType(&t, fun_1); t.handle(&t); printf("t : flag %d\n", t.flag); bulidType(&t, fun_2); t.handle(&t); printf("t : flag %d\n", t.flag); return;}
多态:
#include <stdio.h>struct _play;void (*pfunHandle)(struct _play *ptfun);typedef struct _play{ void *pData; pfunHandle pfun;}Play;
参考资料:http://blog.csdn.net/feixiaoxing/article/details/7192302
- 面向对象之继承,封装,多态c语言实现
- C语言面向对象编程之封装与继承
- c语言实现面向对象之继承,多态
- 用C语言实现面向对象之封装
- C语言也可以“面向对象”—— C语言实现封装、继承和多态
- C语言实现面向对象之继承性
- C语言实现面向对象之继承性
- C语言实现面向对象的思想(实现封装、继承和多态)
- 面向对象之封装、继承、多态
- 面向对象之封装,继承,多态
- 面向对象之封装,继承,多态
- java面向对象之封装、继承、多态
- 用c语言实现面向对象的封装继承和多态
- C语言面向对象编程(一):封装与继承
- C语言面向对象编程(一):封装与继承
- C语言面向对象编程(一):封装与继承
- C语言面向对象编程(一):封装与继承
- C语言面向对象编程(一):封装与继承
- ubuntu12.04 虚拟机 运行环境
- 不用数据线,通过个人电脑(PC)向Andriod移动设备传送文件
- ASP.NET定制简单的错误处理页面
- struts2标签<s:if>和部分表达式的使用
- 协方差矩阵的含义与使用
- 面向对象之继承,封装,多态c语言实现
- GDI+笔记
- 以特定字符相隔or以空格相隔的字符串分割
- vc++高级班之注册表篇[2]---注册表中键的相关操作
- 《Android深度探索(卷1):HAL与驱动开发》虚拟实验环境(Ubuntu Linux)及源代码免费下载,不需要CPU虚拟化支持
- XML解析(SAX详解)
- vc++高级班之注册表篇[3]---注册表中键值的相关操作
- 1004 大数
- Android---把用户带入另外一个应用程序(二)