example.c
来自「c语言是面向过程的程序语言」· C语言 代码 · 共 116 行
C
116 行
/* ****************************** * Object Oriented Programming in C * * Author: Laurent Deniau, Laurent.Deniau@cern.ch * * For more information, please see the paper: * http://home.cern.ch/ldeniau/html/oopc/oopc.html * ****************************** */#define IMPLEMENTATION#include <example.h>#define BASEIMPL \BASEOBJECT_IMPLEMENTATION \ENDOF_IMPLEMENTATION \BASECLASSIMPL( )#define BASECLASSIMPL(decl) \initClassDecl() { decl; } /* required */ \dtorDecl() {} /* required */ \ \ABSTRACTCLASS_IMPLEMENTATION \ENDOF_IMPLEMENTATION#undef OBJECT#define OBJECT ABASEIMPL#undef OBJECT#define OBJECT BBASEIMPL#undef OBJECT#define OBJECT COBJECT_IMPLEMENTATION SUPERCLASS(A), SUPERCLASS(B)ENDOF_IMPLEMENTATIONBASECLASSIMPL(initSuper(A);initSuper(B))#undef OBJECT#define OBJECT DBASEIMPL#undef OBJECT#define OBJECT EOBJECT_IMPLEMENTATION SUPERCLASS(B)ENDOF_IMPLEMENTATIONBASECLASSIMPL(initSuper(B))#undef OBJECT#define OBJECT FBASEIMPL#undef OBJECT#define OBJECT GOBJECT_IMPLEMENTATION SUPERCLASS(C)ENDOF_IMPLEMENTATIONBASECLASSIMPL(initSuper(C))#undef OBJECT#define OBJECT HOBJECT_IMPLEMENTATION SUPERCLASS(D), SUPERCLASS(E)ENDOF_IMPLEMENTATIONBASECLASSIMPL(initSuper(D); initSuper(E))#undef OBJECT#define OBJECT IBASEIMPL#undef OBJECT#define OBJECT JOBJECT_IMPLEMENTATION SUPERCLASS(F), SUPERCLASS(G), SUPERCLASS(H), SUPERCLASS(I)ENDOF_IMPLEMENTATIONBASECLASSIMPL(initSuper(F);initSuper(G);initSuper(H);initSuper(I))#undef OBJECT#define OBJECT KOBJECT_IMPLEMENTATION SUPERCLASS(J)ENDOF_IMPLEMENTATIONinitClassDecl() { initSuper(J); } /* required */dtorDecl() {} /* required */CLASS_IMPLEMENTATIONENDOF_IMPLEMENTATION
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?