|
이건 함수 포인터입니다.
간단하게 예를 들면..
예전 도스 머신에선.. 칼라인 VGA 와 흑백인 허큘리스가 있었죠?.
이런경우 출력등을 두개의 화면에서 일관성 있게 유지하기가 힘듭니다.
그래서 칼라일때 처리한는 코드와 흑백일때 처리하는 코드를
(그러니까 함수죠..)를 따로 만들어두고..
아래같은 함수 포인터를 선언해서..
상황에 맞게 대입을 해줍니다.
그러면.. 실제 메인코드는 전혀 수정없이(함수포인터를 호출하면 되니까..)
양쪽에서 모두 이상하게 보이지 않는 코드를 만들어 낼 수 있습니다.
If (칼라 == ture) 함수포인터 = 칼라처리 함수 ; else 함수포인터 = 흑백처리함수 ;
이런식으로 처리를 하죠..
고대관 님이 쓰신 글 :
: 10년전 코드를 보고 있습니다.
:
: 물론 도스버전에서 코딩한거구요.
:
: 황당해서 전혀 분석이 안 되고 있습니다.
:
: 이런거 첨 봤습니다.
:
: int (*window_waitfunc)()=NULL;
:
: 이게 무슨 의미인지 전혀 모르겠습니다.
:
: 코딩 중간에...
:
: window_waitfunc();
:
: 이렇게 한 줄 들어가 있기도 하구요.
:
: 변수 선언인듯 하면서 함수처럼 보이고 행동하는군요.
:
: ...
:
: 고수님들의 답변 기다리겠습니다.
|