02. #define을 쓰려거든 const, enum, inline을 떠올리자 #define의 문제와 해결 #define을 통해 상수를 교체하는 경우 주의할 점 나열자 둔갑술(enum hack) 매크로 문제에는 inline 함수 템플릿 #define의 문제와 해결 문제 위와 같이 매크로가 정의되어 있는데 만약 위와 관련해서 에러가 발생하는 경우 혼동이 일어날 수 있다. 코드가 컴파일러에 의해 컴파일 되기 이전에 선행 처리자는 해당 지시자를 밀어버리고 숫자 상수로 바꾸게 된다. ASPECT_RATIO라는 명칭은 컴파일러가 쓰는 기호 테이블에 들어가지 못하게 되고, 따라서 에러가 발생하는 경우 에러 메시지에는 1.653이라는 값이 등장하게 되고 이는 에러를 파악하는 입장에서 직관성이 떨어지고 혼동이 발생할 ..