.h檔
#ifndef _CALC_CELL_H_
#define _CALC_CELL_H_
struct calc_cell
{
double num;
double (*add)(struct calc_cell*, double);
double (*sub)(struct calc_cell*, double);
double (*mul)(struct calc_cell*, double);
double (*div)(struct calc_cell*, double);
void (*release)(struct calc_cell*);
};
typedef struct calc_cell calc_cell, *LPcalc_cell;
double calc_cell_add(LPcalc_cell cell, double number);
double calc_cell_sub(LPcalc_cell cell, double number);
double calc_cell_mul(LPcalc_cell cell, double number);
double calc_cell_div(LPcalc_cell cell, double number);
void init_calc_cell(LPcalc_cell cell);
void calc_cell_release(LPcalc_cell cell);
#endif
.c檔的初始化
void init_calc_cell( LPcalc_cell cell)
{
cell->num = 0;
cell->add = calc_cell_add;
cell->sub = calc_cell_sub;
cell->mul = calc_cell_mul;
cell->div = calc_cell_div;
cell->release = calc_cell_release;
}
main檔
#include <stdio.h>
#include <stdlib.h>
#include "calc_cell.h"
int main()
{
calc_cell mycell;
init_calc_cell(&mycell);
printf("mycell data: %f\n", mycell.num);
printf("mycell data add 10: %f\n", mycell.add(&mycell, 10));
printf("mycell data mul 10: %f\n", mycell.mul(&mycell, 10));
printf("mycell data div 5: %f\n", mycell.div(&mycell, 5));
printf("mycell data sub 100: %f\n", mycell.sub(&mycell, 100));
mycell.release(&mycell);
system("pause");
}
新手想法,請大家不吝賜教^^
http://damody.googlecode.com/files/example_C_use_OOP.7z
公告版位
星落的瞬間!放棄的後悔是永遠!
- Jun 10 Thu 2010 22:07
簡單的用c摸擬class?
全站熱搜
留言列表
發表留言