C语言实现面向对象的思想
用C語言實現面向對象的方法,面向對象的三個基本特征,對象唯一性,繼承性,抽象性。
使用C語言中的結構體和函數指針將數據與操作放在一起,使得一個問題的解決方法封裝在結構體中。
其中結構體的嵌套使用實現了繼承性。
?
#include<stdio.h>
#include<stdlib.h>
?
?
struct ?Adt2?
{
?? ?int x;
?? ?int y;
?? ?int (*imll)(int x, int y);
};
?
struct Adt1
{
?? ?int var1;
?? ?int var2;
?? ?struct ?Adt2 var3;
?? ?int (*add)(int x, int y);
?? ?int (*sub)(int x, int y);
};
?
int add(int x,int y);
int sub(int x,int y);
int imll(int x, int y);
?
int main()
{
?? ?struct Adt1 a;
?? ?a.sub = sub;
?? ?a.var3.imll = imll;
?? ?a.var1 = 21;
?? ?a.var2 = 12;
?? ?a.var3.x = 12;
?? ?a.var3.y = 13;
?? ?a.add(a.var1, a.var2);
?? ?a.sub(a.var1, a.var2);
?? ?a.var3.imll(a.var3.x,a.var3.y);
?? ?return 0;
}
?
int imll(int x, int y)
{
?? ?printf("%d * %d = %d\n",x, y, x*y);
?? ?return x*y;
}
?
int add(int x, int y)
{
?? ?printf("%d + %d = %d\n", x, y, x+y);
?? ?return x+y;
}
?
int sub(int x, int y)
{
?? ?printf("%d - %d = %d\n",x, y, x-y);
?? ?return x-y;
}
?
總結
以上是生活随笔為你收集整理的C语言实现面向对象的思想的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: can协议解析字符串的原理
- 下一篇: C语言面向对象编程(六):配置文件解析