Village.h 파일 코드
#include <vector>
Class Person;
Class Village
{
private:
std::vector<Person> persons;
public:
void add(Person);
}
Village.cpp 파일 코드
#include "Village.h"
#include "Person.h"
void Village::add(Person person)
{
persons.push_back(person)
}
1. Village 는 Person class를 사용한다. 하지만 Person의 Header 파일을 사용하지 않는다.
-> 의존 관계를 풀기 위해 -> Person의 코드가 수정될 경우 Village 까지 연쇄적으로 재빌드 해야함.
2. Village의 add 함수는 Village의 Header파일에서 선언만하고 정의는 Village.cpp 파일에서 정의함.
'Program > C,C++' 카테고리의 다른 글
연산자 오버로딩 (0) | 2023.07.02 |
---|---|
멤버 함수 포인터 (0) | 2023.06.28 |
const 멤버 함수 (0) | 2023.06.28 |
this 포인터를 이용한 빌더 패턴 (0) | 2023.06.26 |