C 可以写出面向对象风格的程序,linux源码里面都有很多类似的用法,但是你可能会觉得很别扭,因为这样的实现都需要用到回调函数。
所以你应该选择合适的工具,需要面向对象的时候,还是请选择C++吧。先找一本C++的教材看看。
想学面向对象编程就学面向对象的语言,C本身就是面对过程的,就算是编写出面向对象的样式,也没有面向对象的特性,为何多此一举?
c语言是面向过程的语言,上面的代码使用的是结构体,c++语言是基于对象的(不是纯面向对象的,就叫基于对象的)。本身结构体在c++中就类似于类,也就是说与类的使用有那么一点接近,但是之间还是有很大区别的。
其实就是一个结构体中既有一般的数据成员,比如 int a; char b;等等,(这些就好比C++ 类中的数据成员),然后还有一些函数指针,(这就好比类中 成员函数一样)。
。。。。。。