문제 1
switch문의 '값'부분에 왜 정수만 와야 하는가
문제1. jump table 은 프로그램 초기에 작성 되기 때문에 이미 switch 문이 실행되기 전에 jump table 이 작성되게 됩니다. 따라서, '값' 부분에 변수가 들어가게 되면 jump table 에 무엇이 올지 알 수 없으므로 변수를 사용하면 안되는 것입니다.
문제 2
앞서, switch 문이 내부적으로 처리 되는 부분에서 case 1: ~ case 10: 일 때 만 생각하였는데, 만약 case 1:, case 3:, case 4:, case 10: 과 같이 불규칙 적으로 switch 문이 적용된다면 컴퓨터는 jump table 를 어떻게 작성할까요
문제2. 만약 case 1, case 2, case 3, case 100이런 식으로 switch문을 작성한다면 iump table의 크기가 100이 됩니다. 그래서 case '값'을 순차적으로 작성하여야 메모리적인 측면에서 효율적입니다.