2012-03-12 4 views
0

so .. "학교 일정 최적화 도구"를 만들려고합니다 내 프로그램이 정보가 들어있는 .dat 파일을 수신합니다. 각 과목을 포함한 학생. 문제는 클래스 Student.cs를 만들고 생성자를 대상의 수와 같게 만들고 싶다는 것입니다. 나는 학생이 0에서 (이론적으로) 무한한 수의 과목을 가질 수 있기 때문에 무엇을해야할지 모른다. 변수에 따라 생성자를 만들거나 클래스를 정의 할 수있는 방법이 있습니까? 또는이 학생을 범위 밖의 문제가없는 배열로 만드는 방법에 대한 아이디어.학교 일정, 생성자?

+2

당신이 몇 가지 예제 코드를 게시 할 수 있습니까? 설명에서 무엇을 묻고 있는지 이해하는 것은 어렵습니다. – eeeeaaii

+2

이 숙제가 있습니까? 그렇다면 태그를 붙여야합니다. –

+0

여러 개의 주제를 나타 내기 위해 동적 오브젝트 유형을 사용할 수 있다고 가정합니다. 아마도 일종의 IList 또는 뭔가 – jose

답변

0

공장 패턴을 살펴 봐야합니다. 어떤 과목도없는 학생 클래스를 인스턴스화 한 다음, 학생이 등록하고자하는 각 과목에 대한 학교 주제 팩토리를 호출하십시오.이 모든 것은 Studen 생성자 내에 캡슐화 될 수 있습니다.

1

이 같은 학생 생성자에 주제의 컬렉션 전달할 수 있습니다

public Student(IEnumerable<string> subjects) 
{ 
} 

public Student(params string[] subjects) 
{ 
} 

또는 Subject 자체에 클래스 인 경우 :

public Student(IEnumerable<Subject> subjects) 
{ 
} 

public Student(params Subject[] subjects) 
{ 
}