Section 2. Chapitre 8
single
Défi : Gestion des données avec les constructeurs et les destructeurs
Glissez pour afficher le menu
Tâche
Glissez pour commencer à coder
Imaginez que vous créez un système de notation des étudiants. Vous devez définir une classe GradesManager qui gère une liste de notes d'étudiants.
Votre tâche consiste à implémenter un constructeur qui initialise un tableau dynamique de notes et une méthode unique pour calculer la moyenne. Le destructeur doit libérer automatiquement la mémoire allouée.
-
Implémentation du constructeur avec liste d'initialisation :
- Il prend un paramètre
size. - Allouer un tableau dynamique
gradesde longueursize. - Utiliser une boucle
for(indexide0àsize) pour initialiser chaque note :- Assigner
grades[i] = i + 1comme exemple de valeurs.
- Assigner
- Il prend un paramètre
-
Implémentation d'une méthode
calculateAverage:- Déclarer une variable
suminitialisée à0. - Utiliser une boucle
for(indexide0àsize) pour parcourir le tableaugrades:- Ajouter
grades[i]àsumà chaque itération.
- Ajouter
- Calculer la moyenne avec l'expression
sum * 1.0 / sizepour obtenir un résultat de typedouble. - Retourner la moyenne.
- Déclarer une variable
-
Implémentation du destructeur :
- Appliquer
delete[] gradespour libérer la mémoire du tableau. - Afficher
"Grades memory released."pour confirmer la libération.
- Appliquer
Solution
Tout était clair ?
Merci pour vos commentaires !
Section 2. Chapitre 8
single
Demandez à l'IA
Demandez à l'IA
Posez n'importe quelle question ou essayez l'une des questions suggérées pour commencer notre discussion