OS/Windows API
APIENTRY와 CALLBACK의 차이VallistA2014. 9. 27. 11:14
Main쪽, 루프 돌리는 곳 또는 CALLBACK을 사용할 때 CALLBACK을 사용하는 이유는 명확하는 다들 알고 계실꺼라 생각합니다.
다만 이제 궁금한 사실은 왜 Main 쪽에서
Main을 만들때 int "APIENTRY" 를 쓰는가 입니다.
보통 프로그래머들은 코딩할 때 가독성을 위해서 똑같은 내용이라도 선행처리기로 다른 이름을 만들어버리곤 합니다.
CALLBACK의 내부를 타고 들어가면
#define CALLBACK __stdcall #define WINAPI __stdcall #define WINAPIV __cdecl #define APIENTRY WINAPI #define APIPRIVATE __stdcall #define PASCAL __stdcall
이렇게 나와 있습니다.
즉 CALLBACK = WINAPI = APIENTRY가 된다는 사실입니다.
이러한 경우를 까닭으로 CALLBACK의 기능은 APIENTRY도 똑같다는 사실입니다.
Main도 하나의 CALLBACK으로써 윈도우자체에서 CALLBACK으로 넘겨준다 이말입니다.
결론 :
CALLBACK과 APIENTRY는 가독성의 의미로 다를뿐이고 CALLBACK은 같다.
'OS > Windows API' 카테고리의 다른 글
Windows API :: int WINAPI WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow) 의 의미 (1) | 2016.02.12 |
---|---|
__stdcall과 __cdecl의 차이점 (0) | 2014.09.27 |
APIENTRY와 CALLBACK의 차이 (0) | 2014.09.27 |
#9 Windows API 더블 버퍼링 (0) | 2014.08.26 |
#8 Windows API (GDI+) 이미지 뿌리기 (0) | 2014.08.26 |
#7 Windows API 선, 사각형, 원 뿌리기 (0) | 2014.08.26 |
댓글