セクション 1. 章 16
single
チャレンジ:コンストラクタとデストラクタによるデータ管理
メニューを表示するにはスワイプしてください
タスク
スワイプしてコーディングを開始
学生の成績管理システムを構築することを想定します。GradesManager クラスを作成し、学生の成績リストを管理します。
この課題では、成績の動的配列を初期化するコンストラクタと、平均点を計算するメソッドを1つ実装します。デストラクタでは、確保したメモリを自動的に解放します。
-
イニシャライザリスト構文を用いたコンストラクタの実装:
sizeをパラメータとして受け取ります。- 指定された
sizeで整数型の動的配列gradesを確保します。 - インデックス変数
iを0からsizeまでのforループで使用し、各成績を初期化します:- 例として
grades[i] = i + 1を代入します。
- 例として
-
単一メソッド
calculateAverageの実装:- 変数
sumを0で初期化します。 - インデックス変数
iを0からsizeまでのforループで使用し、grades配列を走査します:- 各イテレーションで
grades[i]をsumに加算します。
- 各イテレーションで
- 平均値は
sum * 1.0 / sizeで計算し、double型の結果を得ます。 - 平均値を返します。
- 変数
-
デストラクタの実装:
- 配列のメモリ解放には
delete[] gradesを使用します。 - メモリ解放後に
"Grades memory released."と出力します。
- 配列のメモリ解放には
例
GradesManager(5).calculateAverage() → 3.0
解答
すべて明確でしたか?
フィードバックありがとうございます!
セクション 1. 章 16
single
AIに質問する
AIに質問する
何でも質問するか、提案された質問の1つを試してチャットを始めてください