참고 링크 :
http://www.joinc.co.kr/w/Site/C/Documents/Using_Member_Function_Pointer
Function pointer로 클래스 멤버 함수 호출
실습 코드 :
#include <iostream>
using namespace std;
class Fruit
{
public:
void Apple(void)
{
cout << "i have an apple" <<endl;
}
void Pineapple(void)
{
cout << "i have a pineapple" <<endl;
}
void Pen(void)
{
cout << "i have an apple pen" <<endl;
}
};
void main(void)
{
Fruit A;
Fruit *pB = new Fruit;
void (Fruit::*FuncPApple)(void);
void (Fruit::*FuncPPine)(void);
void (Fruit::*FuncPPen)(void);
FuncPApple = &Fruit::Apple;
FuncPPine = &Fruit::Pineapple;
FuncPPen = &Fruit::Pen;
(A.*FuncPApple)();
(A.*FuncPPine)();
(A.*FuncPPen)();
(pB->*FuncPApple)();
(pB->*FuncPPine)();
(pB->*FuncPPen)();
}
결과 :
i have an apple
i have a pineapple
i have an apple pen
i have an apple
i have a pineapple
i have an apple pen
'C++' 카테고리의 다른 글
_countof 는 포인터로 하면 안된다. (0) | 2017.06.30 |
---|---|
문자열 char, wchar, TCHAR 비교 ( ASCII, Unicode 비교 ) (1) | 2017.06.20 |
[VS] 정규식 활용하여 #if !define() 전처리기 지시문 #if define() #else로 수정하기 (0) | 2017.02.21 |
[C++ 실행시 에러] 처리되지 않은 예외, 액세스 위반이 발생했습니다 (0) | 2017.02.07 |
reinterpret_cast 정리 (0) | 2016.12.14 |