2012-03-12 36 views
0

so..I'm试图建立一个“学校进度优化器” 我的程序收到一个包含信息的.dat文件。包括每个科目的学生。问题是我想创建一个Student.cs类并使构造函数等于主题数。我不知道该怎么做,因为这个学生可以从0到(理论上)有无数个科目。有没有办法建立一个构造函数或根据变量定义一个类?或者有关如何让这个学生进入阵列而不会出现任何越界问题的想法学校时间表,构造函数?

+2

你能发布一些示例代码?这是很难理解你从描述中要求什么。 – eeeeaaii 2012-03-12 14:57:12

+2

这是功课吗?如果是这样,它应该被标记为这样。 – 2012-03-12 14:57:30

+0

我想你可以有一个动态的对象类型来表示任意数量的主题。也许某种IList或某种东西 – jose 2012-03-12 14:58:51

回答

0

您需要查看工厂模式。实例化没有任何科目的学生课程,然后针对学生要注册的每个科目致电学校工厂。所有这些都可以封装在Studen构造函数中。

1

可以的学科集合中传递到学生的构造是这样的:

public Student(IEnumerable<string> subjects) 
{ 
} 

public Student(params string[] subjects) 
{ 
} 

或者当Subject是本身就是一个类:

public Student(IEnumerable<Subject> subjects) 
{ 
} 

public Student(params Subject[] subjects) 
{ 
}