Sectie 2. Hoofdstuk 8
single
Uitdaging: Gegevensbeheer met Constructors en Destructors
Veeg om het menu te tonen
Taak
Veeg om te beginnen met coderen
Stel je voor dat je een systeem voor het beoordelen van studenten bouwt. Je moet een GradesManager-klasse maken die een lijst met studentencijfers beheert.
Je opdracht is om een constructor te implementeren die een dynamische array van cijfers initialiseert en één methode die het gemiddelde cijfer berekent. De destructor moet het toegewezen geheugen automatisch vrijgeven.
-
Implementeer een constructor met initializer list-syntaxis:
- Deze moet
sizeals parameter nemen. - Wijs een dynamische array van gehele getallen toe, genaamd
grades, met de opgegevensize. - Gebruik een
for-lus met indexvariabeleivan0totsizeom elk cijfer te initialiseren:- Ken als voorbeeldwaarde
grades[i] = i + 1toe.
- Ken als voorbeeldwaarde
- Deze moet
-
Implementeer één methode
calculateAverage:- Maak een variabele
sumen initialiseer deze met0. - Gebruik een
for-lus met indexvariabeleivan0totsizeom over degrades-array te itereren:- Tel bij elke iteratie
grades[i]op bijsum.
- Tel bij elke iteratie
- Bereken het gemiddelde als
sum * 1.0 / sizeom een resultaat van het typedoublete garanderen. - Retourneer het gemiddelde.
- Maak een variabele
-
Implementeer een destructor:
- Gebruik
delete[] gradesom het geheugen dat voor de array is toegewezen vrij te geven. - Print
"Grades memory released."om aan te geven dat het geheugen is vrijgegeven.
- Gebruik
Oplossing
Was alles duidelijk?
Bedankt voor je feedback!
Sectie 2. Hoofdstuk 8
single
Vraag AI
Vraag AI
Vraag wat u wilt of probeer een van de voorgestelde vragen om onze chat te starten.