這是一個初學C++的作業問題,我知道vector,但不允許在這個assigment中使用。我搜索了四周,我發現如何製作一個尺寸不明的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]
指向它。我覺得我有兩次做這項工作只是爲了擁有合適的尺寸。有一些技巧或我失蹤的東西?
謝謝。
我想你不能使用std :: list然後。 – 2012-04-12 05:04:44
與你的老師交談。要麼有最大數量的學生,要麼你應該能夠使用標準容器。如果你對這兩者都是對的,找一個新的老師/學校。 – 2012-04-12 05:12:16
@MooingDuck我在最後一個問題中得到了和這個一樣的答案:O ... – George 2012-04-12 05:13:08