C++ 20의 module의 도입으로 빌드 시간이 줄어들었다. C++의 빌드 과정 1. 전처리 : #include, #define등 2. 컴파일 : obj파일 생성 3. 링크 : obj파일과 심볼, 등을 묶어서 실행파일을 만듦 -> 여기서 이런 기존 빌드 과정의 문제점 1. 너무 느린 빌드 속도(반복된 substitution) 같은 라이 파일도 클래스마다 들고 있으면 각각 오브젝트에 딸려들어가서 무거워진다. (중복으로 인클루드 되는 문제) 2. 매크로 (#define)의 사용을 지양하자..? 예) #define NUM 1 이렇게 한 파일에서 정의하고 다른곳에서 #define NUM 2 하면 다른데서 두 파일 다 인클루드하고 있을 때 NUM을 뭐로 쓸지 모름 3. 심볼의 중복 정의 보통 헤더에 함수를 선언..