这是一个初学者的C ++作业问题,我知道vector,但不允许在这个作业中使用它。我四处寻找,我也发现了如何制作一个array[]
未知大小的。但这有点棘手(有点)。我读到的例子都是这样的:获取一个输入,然后基于该输入(大小 n)创建数组。
我已经创建了这个学生类,但现在我需要一个array
来存储它们。我事先不知道会有多少学生。我只有一个文本文件的输入,每个学生都在一行上。格式如下,样例大概5个,但不知道老师会用多少个来测试我的程序。
输入文件如下:
George Chan Computer_Science New York 23
Johnny Chan Computer_Science New Jersery 22
....
但问题是我不知道有多少学生,直到我读完整个文本图块(或者我不知道是否有其他方法可以做到这一点)。我目前的方法是逐行阅读,增加一个计数器studentCounter
,直到我完成,然后我创建我的Student* myRoster = Student[studentCounter]
. 但是当我不得不再次开始阅读文件时。并逐行解析信息并创建一个Student
对象并让一个myRoster[x]
指向它。我觉得我做了两次工作只是为了有合适的尺寸。是否有一些技巧或我缺少的东西?
谢谢你。