これは初心者のC + +の宿題の問題です。私はベクトルについて知っていますが、この同意では使用できません。私は周りを検索し、私はあまりにも不明なサイズのarray[]
を作る方法を見つけた。しかし、それは少しトリック(並べ替え)です。私が読んだ例は、すべての行に沿っています:入力を取得し、その入力(サイズn)で配列ベースを作成します。入力ファイルの未知のサイズの配列の配列
私はこの学生クラスを作成しましたが、今はそれらを保存するためにarray
が必要です。私は事前にどれくらい多くの生徒がいるか分からない。私は各生徒に1行のテキストファイルを入力しているだけです。フォーマットは以下のとおりですが、サンプルは約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を使用することはできません。教師に話してください。 –
最大数の学生がいるか、標準のコンテナを使用できるはずです。両方のことについて正しいのであれば、新しい教師/学校を探してください。 –
@MooingDuck私は最後の質問でこれと同じ答えを得ます:O ... – George