State패턴을 하기 전에 함수 포인터의 대안으로서 가상함수를 소개해 드리겠습니다. State패턴이 사실 함수포인터랑 비슷하기 때문에... 가끔 너무 많은 if문 때문에 함수 포인터를 쓰는 경우가 있을 것입니다. 이 가상함수는 함수 포인터와 비슷하다고 할 수 있습니다. 차이점이라면 더 유연하고 직관적이며... 암튼 더 좋습니다. void HandleCommand( int CommandID ) { switch( CommandID ) { case 1: case 2: case 3: default: } } 이것을 함수 포인터로 바꾸면... void Command1() { //구현.... } void Command2() { } void Command3() { } typedef ..