C/C언어 문법
함수 포인터 예제
lwj789
2023. 1. 26. 16:08
CiGuardAgentDlg : 다이얼로그 클래스
*fcnPtr : AddEventString(const wchar_t *const ap_stirng, ...) 함수이고 리스트 박스에 이벤트 로그를 추가하는 함수
HTTP_Post hp : HTTP_Post클래스 객체 생성
hp.Request(this, fcnPtr) : HTTP_Post 클래스에서 CiGuardAgentDlg클래스에 있는 리스트 박스를 사용하기 위해 함수 포인터로 넘겨줌으로써 HTTP_Post에서도 리스트 박스를 사용할 수있다.
또한 메인 dlg의 주소값을 구하지 않아도 된다.
1
2
3
4
5
6
7
|
CiGuardAgentDlg *c = this;
void (CiGuardAgentDlg:: * fcnPtr)(const wchar_t *const, ...) = NULL;
fcnPtr = &CiGuardAgentDlg::AddEventString;
(c->*fcnPtr)(L"POST");
HTTP_Post hp;
hp.Request(this, fcnPtr);
|
cs |
아래 블로그에 함수 포인트 설명이 매우 잘되어 있어서 링크 걸어둠.