int main()
{
CComponent* pComponent = new CComponent("My Component");
  
        //1. 객체로 인자를 넘길때(1번을 한다면 2번을 주석처리하세요)
        pComponent->AddParameter(CParameter("Test1"));
pComponent->AddParameter(CParameter("Test2"));
pComponent->AddParameter(CParameter("Test3"));
pComponent->AddParameter(CParameter("Test4"));
pComponent->AddParameter(CParameter("Test5"));
pComponent->AddParameter(CParameter("Test6"));
pComponent->AddParameter(CParameter("Test7"));
//////// 

 
       //2. 포인터로 인자를 넘길때(2번을 한다면 1번을 주석처리하세요)
for (int i = 0; i < 6; i++)
{
pComponent->AddParameter(CParameter("Test"));
}
//////// 
int nSize = pComponent -> GetParameterSize();
        for (int i = 0; i < nSize; i++) //객체로 넘길때입니다. 포인터로 넘길시에 "GetParameterAt(i)->"로 변경.
        //아래의 포문도 동일
{
cout << i+1 << " " << pComponent->GetParameterAt(i).GetName() << endl;
}
cout << endl;

cout << "3번째 객체를 삭제합니다" << endl;

pComponent->DeleteParameterAt(3);
cout << endl;
nSize = pComponent -> GetParameterSize();
for (int i = 0; i < nSize; i++)
{
cout << i+1 << " " << pComponent->GetParameterAt(i).GetName() << endl;

}
cout << endl;

delete pComponent;

return 0;
}


헤더파일 분리
Component.h , Parameter.h, BaseEntity.h 로 분리후 Parameter클래스는 BaseEntity클래스를 상속받음.
BaseEntity클래스는 "Test1", "Test2" 같은 문자를 입력받습니다.(멤버변수가 'char* 변수명'임) 
Component클래스는 Parameter객체들을 배열형태로 관리 합니다.

구현해보시고 제가 만든거하고 비교해보세요 

+ Recent posts