1.每个对象类型/类都用一个对应的结构类型表示。
2.类继承通过将基类包装到一个新类中实现,例如,我们定义一个foobar类,从foo类继承,可以实现为
typedef struct FT_FooBarRec_* FT_FooBar; typedef struct FT_FooBarRec_ { // the base "foo" class fields FT_FooRec root; // fields proper to the "foobar" class ... } FT_FooBarRec;
可以看到,将一个FT_FooRec放在FT_FooBarRec定义的开始,并约定名为root,可以确保一个foobar对象也是一个foo对象。
通过对freetype2的了解,我更加对c感兴趣了。
今天的教训是:不要完全参看别人的思想,有时候会导致自己的误差。