(2)用C语言实现面向对象---封装、继承和多态

 封装:struct中封装成员变量和函数指针。

继承:结构体中嵌套结构体。

多态:子类对象动态指向父类的现象叫多态。

void  pFunction2(void)

{

printf(“函数2”);

}

struct A{   //父类

void (*pFunction1)(void);   //虚函数

};

struct B{     //子类

struct A a;//父类

void (*pFunction2)(void);//子类

}*b;

b->pFunction2=b->a.pFunction1;

pFunction2();

No.比较点函数重载函数重写
1 单词 Overload Override
2 方法的声明 方法名相同,参数列表不同 方法名相同,参数列表相同
3 返回值 没有要求 返回值必须相同或者子类
4 访问权限 没有要求 子类不能比父类更加严格
5 范围 同一个类中 继承关系中
我有个朋友是爵士音乐家,他有次跟我说:如果你不是乐队里最差的演奏者,马上换支乐队。我现在在Spotify工作,在这里我每天都觉得自己是个【狗屁程序员】,也因此我离开了上一家公司,从Spotify重头开始。当我在这里再也感觉不到自己是个【狗屁程序员】的时候,我会选择离开,然后找一个能让我再次感到自己是坨屎的地方。这种策略在我的职业生涯里确实 帮了我大忙。 ------译自 Quora
原文地址:https://www.cnblogs.com/wycBlog/p/7150219.html