✅ 목표 (Goal)

헤더가드 및 모듈 구조 설계

✅ 목차 (Index)

결론 먼저: 함수 선언은 헤더에, 함수 정의는 소스에..

샘플 함수를 몇개 만들고, 호출해 보자.

함수의 호출 순서에 따른 에러 발생 및 해결책

모듈별 분할 설계: 함수의 선언과 정의는 다르다!! ★★★

전방선언: 함수를 미리 (정의가 아닌) 선언하면 문제가 해결된다. ★★

함수를 중복정의할수는 없지만, 중복 선언은 문제없다. ★★★

헤더 파일에 함수의 정의를 넣고 빌드해보자. ok

헤더 파일에 함수의 정의를 넣고 빌드해보자. error!

헤더가드: 중복 정의를 헤더가드로 막아보자.

헤더가드 작성하는 관례: #pragma vs #ifndef

헤더가드가 없어도, 함수 호출 관계를 보고 판단하면 되지 않을까요?

헤더 가드를 적용해보자.

헤더 가드를 적용해도 문제가 있다! ★★★

헤더 가드를 적용해도 문제가 있다! ★★★