读书人

C构造体尽然可以这样用

发布时间: 2012-09-09 09:27:54 作者: rapoo

C结构体尽然可以这样用?
下面是appro方案中关于白平衡一段的C代码,简化如下

C/C++ code
typedef struct A_Obj{    struct A_Fxns *fxns;}A_Obj;typedef struct A_Obj *A_Handle;typedef struct A_Fxns{    int a;    int (*process)(A_Handle handle,int b);    int (*control)(A_Handle handle,int b)}A_Fxns;


感觉这个A_Handle绕了一圈又绕道自己肚子里去了,请大家看看这是怎么回事

[解决办法]
这是用C语言来实现面向对象的写法,把A_Handle handle看成this指针就容易理解了。
[解决办法]
这样的代码看起来好累。
如果要用面向对象的C,可以用G-Object/GLib库。
[解决办法]
用C实现面向对象
太复杂了
感觉没有必要

有 objective-c
还有C++, JAVA
这个都是语言级别上就实现了面向对象

读书人网 >C语言

热点推荐