[C] C언어로 객체지향 흉내내기
출처 - 윤성우 열혈 C++ 프로그래밍
#include <stdio.h>
typedef struct _Data
{
int data;
void (*ShowData)(const struct _Data *);
void (*Add)(struct _Data *, int);
}Data;
void ShowData(const Data *THIS);
void Add(Data *THIS, int num);
int main()
{
Data obj1 = {15, ShowData, Add};
Data obj2 = {7, ShowData, Add};
obj1.Add(&obj1, 17);
obj2.Add(&obj2, 9);
obj1.ShowData(&obj1);
obj2.ShowData(&obj2);
return 0;
}
void ShowData(const Data *THIS)
{
printf("Data : %d\n", THIS->data);
}
void Add(Data *THIS, int num)
{
THIS->data += num;
}
댓글
댓글 쓰기