资 源 简 介
An easy to use Template to write OO program with pure C !
latest version 0.22
英文比较挫,有些时候会漏打多打几个字母,比如wiki页里面就有,大家凑合看,就当找彩蛋
建议下载打包好的压缩包,因为最后的版本懒得用svn传了,囧
这不是C++,这是C!
如果你用过GObject,就知道那个的繁琐和这个的简洁了
这里的NEW,DELETE都是大写的,是宏!
下文中大写的如下一些都是宏!
CLASS,STATIC,ASM
CLASS_EX,STATIC_EX,ASM_EX
NEW,NEW0,DELETE,DELETE0,ST
How to Compile 如何编译
e.g. "gcc OODbg.c test_Animals.c"
上面加入OODbg.c文件的编译,可以提供内存分配的日志记录等功能,方便调试
同时可配合graphviz绘制函数调用图表
Simple Cat/Dog Example
一个简单的用于描述继承关系的例子
这是用C语言配合OOC-GCC中定义的宏完成的
更多例子打的包中有,wiki中有一些
比较复杂的例子可以看那个简单解释器的例子
```
//引入宏模板
//该模板纯粹靠C语言提供的宏扩展实现,并且不引入任何一个全局变量!
//足以保证使用上的方便与灵活
#include "OOStd.h"
//类的定义
CLASS(Animal){
char *name;
//声明公有区域,节约内存
STATIC(Animal);
//声明函数指针,STATIC宏保证了多个实例共享一块公有