Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 学校时间表,建设者?_C#_Arrays_Constructor_Schedule_Timetable - Fatal编程技术网

C# 学校时间表,建设者?

C# 学校时间表,建设者?,c#,arrays,constructor,schedule,timetable,C#,Arrays,Constructor,Schedule,Timetable,所以..我想建立一个“学校时间表优化程序” 我的程序接收到一个包含信息的.dat文件。包括每门学科的学生人数。问题是我想让一个类Student.cs,并使构造函数等于主题数。我不知道该怎么办,因为学生可能有从0到(理论上)无限多的科目。有没有办法根据变量生成构造函数或定义类?或者关于如何让这个学生进入一个数组而不出现任何越界问题的任何想法您需要查看工厂模式。实例化没有任何科目的学生类,然后为学生想要注册的每个科目调用学校科目工厂。所有这些都可以封装在Studen t构造函数中。您可以将一组主题传

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

您需要查看工厂模式。实例化没有任何科目的学生类,然后为学生想要注册的每个科目调用学校科目工厂。所有这些都可以封装在Studen t构造函数中。

您可以将一组主题传递到Studen t构造函数中,如下所示:

public Student(IEnumerable<string> subjects)
{
}

public Student(params string[] subjects)
{
}

你能发布一些示例代码吗?从描述中很难理解你在问什么。这是家庭作业吗?如果是这样的话,它应该被标记为这样。我想你可以有一个动态对象类型来表示任意数量的主题。也许是某种IList之类的
public Student(IEnumerable<Subject> subjects)
{
}

public Student(params Subject[] subjects)
{
}