Udfordring: Håndtering af Data med Konstruktører og Destruktører
Swipe to start coding
Forestil dig, at du bygger et karakteradministrationssystem for studerende. Du skal oprette en GradesManager-klasse, der håndterer en liste over studerendes karakterer.
Din opgave er at implementere en konstruktør, der initialiserer et dynamisk array af karakterer samt en enkelt metode, der beregner gennemsnittet af karaktererne. Destruktøren skal automatisk frigive den allokerede hukommelse.
-
Implementering af en konstruktør ved brug af initializer list-syntaks:
- Den skal tage
sizesom parameter. - Allokér et dynamisk array af heltal kaldet
gradesmed den angivnesize. - Brug en
for-løkke med indeksvariablenifra0tilsizefor at initialisere hver karakter:- Tildel
grades[i] = i + 1som eksempelværdier.
- Tildel
- Den skal tage
-
Implementering af en enkelt metode
calculateAverage:- Opret en variabel
sum, initialiseret til0. - Brug en
for-løkke med indeksvariablenifra0tilsizefor at iterere overgrades-arrayet:- Læg
grades[i]tilsumi hver iteration.
- Læg
- Beregn gennemsnittet som
sum * 1.0 / sizefor at sikre etdouble-resultat. - Returnér gennemsnittet.
- Opret en variabel
-
Implementering af en destruktør:
- Brug
delete[] gradesfor at frigive den hukommelse, der er allokeret til arrayet. - Udskriv
"Grades memory released."for at indikere, at hukommelsen er blevet frigivet.
- Brug
Eksempel
GradesManager(5).calculateAverage() → 3.0
Løsning
Tak for dine kommentarer!
single
Spørg AI
Spørg AI
Spørg om hvad som helst eller prøv et af de foreslåede spørgsmål for at starte vores chat
Can you explain this in simpler terms?
What are the main takeaways from this?
Can you give me an example?
Fantastisk!
Completion rate forbedret til 3.13
Udfordring: Håndtering af Data med Konstruktører og Destruktører
Stryg for at vise menuen
Swipe to start coding
Forestil dig, at du bygger et karakteradministrationssystem for studerende. Du skal oprette en GradesManager-klasse, der håndterer en liste over studerendes karakterer.
Din opgave er at implementere en konstruktør, der initialiserer et dynamisk array af karakterer samt en enkelt metode, der beregner gennemsnittet af karaktererne. Destruktøren skal automatisk frigive den allokerede hukommelse.
-
Implementering af en konstruktør ved brug af initializer list-syntaks:
- Den skal tage
sizesom parameter. - Allokér et dynamisk array af heltal kaldet
gradesmed den angivnesize. - Brug en
for-løkke med indeksvariablenifra0tilsizefor at initialisere hver karakter:- Tildel
grades[i] = i + 1som eksempelværdier.
- Tildel
- Den skal tage
-
Implementering af en enkelt metode
calculateAverage:- Opret en variabel
sum, initialiseret til0. - Brug en
for-løkke med indeksvariablenifra0tilsizefor at iterere overgrades-arrayet:- Læg
grades[i]tilsumi hver iteration.
- Læg
- Beregn gennemsnittet som
sum * 1.0 / sizefor at sikre etdouble-resultat. - Returnér gennemsnittet.
- Opret en variabel
-
Implementering af en destruktør:
- Brug
delete[] gradesfor at frigive den hukommelse, der er allokeret til arrayet. - Udskriv
"Grades memory released."for at indikere, at hukommelsen er blevet frigivet.
- Brug
Eksempel
GradesManager(5).calculateAverage() → 3.0
Løsning
Tak for dine kommentarer!
single