C, C++
포인트 함수 < 포인트로 함수를 호출하는 방법>
슬픈달
2019. 1. 23. 09:47
반응형
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
typedef int (*msgFuncPtr) (void *param1);
int Sum(void* ptMsg);
typedef struct _FUNC_PTR
{
msgFuncPtr func;
}Func_ptr;
typedef struct _TMEP
{
int a;
int b;
}Temp;
int main()
{
Func_ptr stFuncPtr;
Temp* ptTemp = new Temp;
ptTemp->a = 2;
ptTemp->b = 3;
stFuncPtr.func = Sum; // 호출할 함수가 Sum이라는 것을 설정
stFuncPtr.func(ptTemp); // Sum 함수를 호출하는 부분
return 0;
}
int Sum(void* ptMsg)
{
Temp* ptTemp = (Temp*)ptMsg;
printf("x + Y = %d\n", ptTemp->a + ptTemp->b);
return ptTemp->a + ptTemp->b;
}
반응형