라이브러리를 사용하다보면 hpp 파일이 자주 보입니다. 이 파일은 무엇일까요?

개념

C의 헤더파일은 .h, C++의 헤더파일은 .hpp입니다.

CC++ 헤더 이름을 다르게 쓰는 이유는 다음과 같습니다.

  • CC++ 코드의 포맷을 다르게 쓰는 경우, editor에서 파일 형식에 따라 설정을 달리해 놓으면 editor가 자동으로 포맷을 맞춰줍니다.

  • libraray가 C로 구현돼 있고 wrapperC++로 구현된 경우, header는 보통 이름이 비슷하기 때문에 파일 확장자로 구분해서 쓸 수 있습니다.

  • 프로젝트가 C++버전에서 더 적절한 기능을 지원하는데 C 버전에서 쓰고 있는 경우, 헤더 이름을 언어(C/C++)에 따라 다르게 설정하면 C헤더를 찾아내서 C++ 버전으로 바꾸는 게 쉽습니다.

결론

CC++은 다른 언어고, 둘을 같이 쓰는 건 위험하기 때문에 권장하지 않는 방법입니다. 따라서 파일 이름을 다르게 지음으로써 어떤 언어가 쓰였는지 구분해 주는 것입니다.