C++ 예제로 배우는 소프트웨어 설계 기법 (3) — 윈도우 클래스와 메시지 처리(Window)

GUI 시스템의 C API는 윈도우마다 윈도우 프로시저(window procedure) 하나를 등록받아, 클릭·키 입력 같은 메시지를 핸들과 함께 넘겨준다. C로 쓰면 메시지마다 switch의 case가 늘어나고, 버튼·에디터처럼 비슷한 윈도우가 많아지면 같은 switch가 복사된다.…

Continue ReadingC++ 예제로 배우는 소프트웨어 설계 기법 (3) — 윈도우 클래스와 메시지 처리(Window)

C++ 고급 문법 (10) — 함수 포인터(Function Pointer)

qsort, signal, pthread_create처럼 C 라이브러리는 동작을 바꿀 때 함수의 주소를 받는다. C++에서도 C 라이브러리와 연동하거나, 명령 이름과 처리 함수를 표로 묶거나, 플러그인 진입점을 받을 때 함수 포인터(function pointer)를 그대로 쓴다.…

Continue ReadingC++ 고급 문법 (10) — 함수 포인터(Function Pointer)