Minwoo Dev.
[C++] 윤성우의 열혈 C++ 프로그래밍 Ch01-4 : 파일의 분할 본문
728x90
반응형
SMALL
문제
앞서 소개한 예제 NameSp2.cpp를 다음과 같이 총 3개의 파일로 분할하여 컴파일 해보자.
- 헤더파일 : main 함수를 제외한 나머지 두 함수의 선언을 삽입한다.
- 소스파일1 : main 함수를 제외한 나머지 두 함수의 정의를 삽입한다.
- 소스파일2 : main 함수만 삽입한다.
파일의 이름은 여러분이 임의로 정해도 된다. 하지만, 각 파일에 들어갈 내용은 위의 지시대로 진행해야 한다.
NameSp2.cpp
#include <iostream>
namespace BestComImpl
{
void SimpleFunc(void);
}
namespace ProgComImpl
{
void SimpleFunc(void);
}
int main(void)
{
BestComImpl::SimpleFunc();
ProgComImpl::SimpleFunc();
return 0;
}
void BestComImpl::SimpleFunc(void)
{
std::cout << "BestCom이 정의한 함수" << std::endl;
}
void ProgComImpl::SimpleFunc(void)
{
std::cout << "ProgCom이 정의한 함수" << std::endl;
}
정답
header.h (헤더파일 - main 함수를 제외한 나머지 두 함수의 선언을 삽입한다. )
namespace BestComImpl
{
void SimpleFunc(void);
}
namespace ProgComImpl
{
void SimpleFunc(void);
}
src1.cpp ( 소스파일1 - main 함수를 제외한 나머지 두 함수의 정의를 삽입한다. )
#include <iostream>
#include "header.h"
void BestComImpl::SimpleFunc(void)
{
std::cout << "BestCom이 정의한 함수" << std::endl;
}
void ProgComImpl::SimpleFunc(void)
{
std::cout << "ProgCom이 정의한 함수" << std::endl;
}
src2.cpp ( 소스파일2 - main 함수만 삽입한다. )
#include "header.h"
int main(void)
{
BestComImpl::SimpleFunc();
ProgComImpl::SimpleFunc();
return 0;
}
728x90
반응형
LIST
'C++' 카테고리의 다른 글
[C++] 윤성우의 열혈 C++ 프로그래밍 Ch02-1 : 참조자 기반의 Call-by-reference 구현 (0) | 2024.03.04 |
---|---|
[C++] 윤성우의 열혈 C++ 프로그래밍 Ch01-6 : 은행계좌 관리 프로그램 (0) | 2024.03.03 |
[C++] 윤성우의 열혈 C++ 프로그래밍 Ch01-3 : 매개변수의 디폴트 값 (0) | 2024.03.02 |
[C++] 윤성우의 열혈 C++ 프로그래밍 Ch01-2 : 함수 오버로딩 (0) | 2024.03.02 |
[C++] 윤성우의 열혈 C++ 프로그래밍 Ch01-1 : C++ 기반의 데이터 입출력 문제풀이 (0) | 2024.03.02 |