Sfida: Gestione Dei Dati Con Costruttori e Distruttori
Swipe to start coding
Immagina di dover realizzare un sistema di gestione dei voti degli studenti. È necessario creare una classe GradesManager che gestisca un elenco di voti degli studenti.
L'obiettivo è implementare un costruttore che inizializzi un array dinamico di voti e un unico metodo che calcoli la media dei voti. Il distruttore dovrà rilasciare automaticamente la memoria allocata.
-
Implementazione di un costruttore utilizzando la sintassi dell'initializer list:
- Deve accettare
sizecome parametro. - Allocare un array dinamico di interi chiamato
gradesdella dimensione specificata dasize. - Utilizzare un ciclo
forcon la variabile indiceida0asizeper inizializzare ciascun voto:- Assegnare
grades[i] = i + 1come valori di esempio.
- Assegnare
- Deve accettare
-
Implementazione di un unico metodo
calculateAverage:- Creare una variabile
suminizializzata a0. - Utilizzare un ciclo
forcon la variabile indiceida0asizeper scorrere l'arraygrades:- Sommare
grades[i]asumad ogni iterazione.
- Sommare
- Calcolare la media come
sum * 1.0 / sizeper ottenere un risultato di tipodouble. - Restituire la media.
- Creare una variabile
-
Implementazione di un distruttore:
- Utilizzare
delete[] gradesper rilasciare la memoria allocata per l'array. - Stampare
"Grades memory released."per indicare che la memoria è stata liberata.
- Utilizzare
Esempio
GradesManager(5).calculateAverage() → 3.0
Soluzione
Grazie per i tuoi commenti!
single
Chieda ad AI
Chieda ad AI
Chieda pure quello che desidera o provi una delle domande suggerite per iniziare la nostra conversazione
Fantastico!
Completion tasso migliorato a 3.13
Sfida: Gestione Dei Dati Con Costruttori e Distruttori
Scorri per mostrare il menu
Swipe to start coding
Immagina di dover realizzare un sistema di gestione dei voti degli studenti. È necessario creare una classe GradesManager che gestisca un elenco di voti degli studenti.
L'obiettivo è implementare un costruttore che inizializzi un array dinamico di voti e un unico metodo che calcoli la media dei voti. Il distruttore dovrà rilasciare automaticamente la memoria allocata.
-
Implementazione di un costruttore utilizzando la sintassi dell'initializer list:
- Deve accettare
sizecome parametro. - Allocare un array dinamico di interi chiamato
gradesdella dimensione specificata dasize. - Utilizzare un ciclo
forcon la variabile indiceida0asizeper inizializzare ciascun voto:- Assegnare
grades[i] = i + 1come valori di esempio.
- Assegnare
- Deve accettare
-
Implementazione di un unico metodo
calculateAverage:- Creare una variabile
suminizializzata a0. - Utilizzare un ciclo
forcon la variabile indiceida0asizeper scorrere l'arraygrades:- Sommare
grades[i]asumad ogni iterazione.
- Sommare
- Calcolare la media come
sum * 1.0 / sizeper ottenere un risultato di tipodouble. - Restituire la media.
- Creare una variabile
-
Implementazione di un distruttore:
- Utilizzare
delete[] gradesper rilasciare la memoria allocata per l'array. - Stampare
"Grades memory released."per indicare che la memoria è stata liberata.
- Utilizzare
Esempio
GradesManager(5).calculateAverage() → 3.0
Soluzione
Grazie per i tuoi commenti!
single