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

+ Recent posts