freetype虽然全是用c语言编写的,其实通过c实现了类似面向对象的整个过程。其中每个对象是通过结构体定义的,而类的每个方法在结构体中采用了函数指针作为结构体成员来实现。通过这样的方法达到了效果。以前对函数指针没有什么了解,因为用的比较少,现在发现c真强大,看来以前一直说自己喜欢c,但是又做过多深研究呢?唉!惭愧呀!
#include <stdio.h>
int func(void)
{
int i = 1;
return i;
}
typedef int (*funPointer)();
typedef struct
{
int a;
int b;
funPointer x;
}strA;
void main()
{
strA y;
y.a = 1;
y.b = 2;
y.x = func;
y.b=y.x();
printf("%d",y.b);
}