Herausforderung: Datenverwaltung mit Konstruktoren und Destruktoren
Swipe to start coding
Stellen Sie sich vor, Sie entwickeln ein Notenverwaltungssystem für Studierende. Sie sollen eine Klasse GradesManager erstellen, die eine Liste von Noten verwaltet.
Ihre Aufgabe ist es, einen Konstruktor zu implementieren, der ein dynamisches Array von Noten initialisiert, sowie eine einzige Methode, die die Durchschnittsnote berechnet. Der Destruktor soll den belegten Speicher automatisch freigeben.
-
Implementieren Sie einen Konstruktor unter Verwendung der Initialisierungsliste:
- Er soll
sizeals Parameter übernehmen. - Allokieren Sie ein dynamisches Array von Ganzzahlen mit dem Namen
gradesmit der angegebenensize. - Verwenden Sie eine
for-Schleife mit der Indexvariablenivon0bissize, um jede Note zu initialisieren:- Weisen Sie
grades[i] = i + 1als Beispielwerte zu.
- Weisen Sie
- Er soll
-
Implementieren Sie eine einzige Methode
calculateAverage:- Erstellen Sie eine Variable
sum, initialisiert mit0. - Verwenden Sie eine
for-Schleife mit der Indexvariablenivon0bissize, um über das Arraygradeszu iterieren:- Addieren Sie in jeder Iteration
grades[i]zusum.
- Addieren Sie in jeder Iteration
- Berechnen Sie den Durchschnitt als
sum * 1.0 / size, um ein Ergebnis vom Typdoublezu erhalten. - Geben Sie den Durchschnitt zurück.
- Erstellen Sie eine Variable
-
Implementieren Sie einen Destruktor:
- Verwenden Sie
delete[] grades, um den für das Array belegten Speicher freizugeben. - Geben Sie die Meldung
"Grades memory released."aus, um anzuzeigen, dass der Speicher freigegeben wurde.
- Verwenden Sie
Example
GradesManager(5).calculateAverage() → 3.0
Lösung
Danke für Ihr Feedback!
single
Fragen Sie AI
Fragen Sie AI
Fragen Sie alles oder probieren Sie eine der vorgeschlagenen Fragen, um unser Gespräch zu beginnen
Awesome!
Completion rate improved to 3.13
Herausforderung: Datenverwaltung mit Konstruktoren und Destruktoren
Swipe um das Menü anzuzeigen
Swipe to start coding
Stellen Sie sich vor, Sie entwickeln ein Notenverwaltungssystem für Studierende. Sie sollen eine Klasse GradesManager erstellen, die eine Liste von Noten verwaltet.
Ihre Aufgabe ist es, einen Konstruktor zu implementieren, der ein dynamisches Array von Noten initialisiert, sowie eine einzige Methode, die die Durchschnittsnote berechnet. Der Destruktor soll den belegten Speicher automatisch freigeben.
-
Implementieren Sie einen Konstruktor unter Verwendung der Initialisierungsliste:
- Er soll
sizeals Parameter übernehmen. - Allokieren Sie ein dynamisches Array von Ganzzahlen mit dem Namen
gradesmit der angegebenensize. - Verwenden Sie eine
for-Schleife mit der Indexvariablenivon0bissize, um jede Note zu initialisieren:- Weisen Sie
grades[i] = i + 1als Beispielwerte zu.
- Weisen Sie
- Er soll
-
Implementieren Sie eine einzige Methode
calculateAverage:- Erstellen Sie eine Variable
sum, initialisiert mit0. - Verwenden Sie eine
for-Schleife mit der Indexvariablenivon0bissize, um über das Arraygradeszu iterieren:- Addieren Sie in jeder Iteration
grades[i]zusum.
- Addieren Sie in jeder Iteration
- Berechnen Sie den Durchschnitt als
sum * 1.0 / size, um ein Ergebnis vom Typdoublezu erhalten. - Geben Sie den Durchschnitt zurück.
- Erstellen Sie eine Variable
-
Implementieren Sie einen Destruktor:
- Verwenden Sie
delete[] grades, um den für das Array belegten Speicher freizugeben. - Geben Sie die Meldung
"Grades memory released."aus, um anzuzeigen, dass der Speicher freigegeben wurde.
- Verwenden Sie
Example
GradesManager(5).calculateAverage() → 3.0
Lösung
Danke für Ihr Feedback!
single