class CB;
typedef void (CB::*PF_V_V)(void);
class CA
{
public:
CA() : m_CB(0), m_pfFunc(0) { }
void setCB(CB* pCB) { m_CB = pCB; }
void setFunc(PF_V_V pfFunc) { m_pfFunc = pfFunc; }
void run() { (m_CB->*m_pfFunc)(); }
private:
CB* m_CB;
PF_V_V m_pfFunc;
};
class CB
{
public:
CB() { }
void Test(void);
void TestFuncPointer(void);
private:
CA m_CA;
};
void CB::TestFuncPointer(void)
{
m_CA.setCB(this);
m_CA.setFunc(&CB::Test);
}
'Programming > C++ 일반' 카테고리의 다른 글
CrtDbgRoutine - 메모리 누수 추적 (0) | 2011.07.09 |
---|---|
#pragma init_seg( {compiler | lib | user | "섹션이름"[, 함수이름]} ) (0) | 2011.06.07 |