C 语言初步实现面向对象的三个基本特征 (2)

多层级继承的情况下,没法再添加更多虚函数定义
例如有基类 Object,虚函数列表里有 A B C 三个函数指针。类 ObjectA 继承 Object,类 ObjectB 继承 ObjectA。此时类 ObjectA 无法再往虚函数列表里添加更多定义了。

如果要添加接口,转换不了

要解决这些问题,需要有 Map 这种数据结构,将函数指针存放到 Map 里面。

参考资料

C语言:春节回家过年,我发现只有我没有对象!
https://mp.weixin.qq.com/s/2ivQ9hcRvZnhk89jzAppSg

用C实现OOP面向对象编程(1)
https://www.cnblogs.com/findumars/p/6350092.html

C语言的不完整类型和前置声明
https://blog.csdn.net/astrotycoon/article/details/41286413

C语言实现多态
https://blog.csdn.net/dumpling5232/article/details/52632060

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/zwzggg.html