[Effective C++ 정리] #define을 쓰려거든 const, enum, inline을 떠올리자
이펙티브 C++ 책에 대한 정리를 하려고 한다. - #define을 쓰려거든 const, enum, inline을 떠올리자 즉, "가급적 선행 처리자보다 컴파일러를 더 가까이 하자" 라는 말이다. #define ASPECT_RATIO 1.653이 코드를 보면 우리눈에는 ASPECT_RATIO 라는 기호식 이름으로 보이지만 컴파일러 눈에는 그저 1.653으로 보일 뿐이다. 이는 선행처리자가 컴파일 전에 ASPECT_RATIO를 1.653로 바꾸어 버리기 때문인데.. 이 때문에 컴파일러가 쓰는 기호 테이블에 들어가지 않게 된다.이러한 상황에서 에러 발생시 에러 메세지에는 그저 1.653만 출력될뿐.. 이게 어디서 왔는지는 알수 없다.에러 뜨면 내가 작성한 코드라도 머리아픈데 다른 사람이 작성한 코드라 생각해..
Programming/C,C++
2014. 6. 5. 15:13