用C实现C++ Class

王朝c/c++·作者佚名  2006-01-10
窄屏简体版  字體: |||超大  

#ifndef _MYCCLASS_H_

#define _MYCCLASS_H_

#ifndef C_CLASS

#define C_CLASS struct

#endif

#ifndef C_STATIC

//#define C_STATIC(classname,x) namespace classname{ x;}

#define C_STATIC(classname,x)

#endif

C_CLASS CDriverObject{

C_CLASS CDriverObject* pDO;

void (*Read)(C_CLASS CDriverObject* pDO);

void (*ReadX)();

int a;

int b;

C_STATIC(CDriverObject,int staticMember)

};

#endif

#include <stdio.h>

#include "MyCClass.h"

#include <memory.h>

#include <malloc.h>

void MyRead(C_CLASS CDriverObject *pDo)

{

printf("CDriverObject::a=%d\n",pDo->a);

}

void MyReadX()

{

printf("CDriverObject Static Member:\n");

}

int main()

{

C_CLASS CDriverObject* pDo;

pDo=(C_CLASS CDriverObject *)malloc(sizeof(C_CLASS CDriverObject));

// ASSERT(pDo);

memset(pDo,0,sizeof(C_CLASS CDriverObject));

pDo->Read=MyRead;

pDo->ReadX=MyReadX;

pDo->pDO=pDo;

pDo->Read(pDo);

pDo->ReadX();

free(pDo);

return 0;

}

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航