Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Oppiskele Haaste: Tietojen Hallinta Konstruktoreilla ja Destruktoreilla | Konstruktorit ja Destruktorit
C++ OOP
Osio 2. Luku 8
single

single

Haaste: Tietojen Hallinta Konstruktoreilla ja Destruktoreilla

Pyyhkäise näyttääksesi valikon

Tehtävä

Pyyhkäise aloittaaksesi koodauksen

Kuvittele, että rakennat opiskelijoiden arvostelujärjestelmää. Sinun tulee luoda GradesManager-luokka, joka hallinnoi opiskelijoiden arvosanalistaa.

Tehtävänäsi on toteuttaa konstruktori, joka alustaa dynaamisen arvosanataulukon, sekä yksi metodi, joka laskee arvosanojen keskiarvon. Destruktori vapauttaa varatun muistin automaattisesti.

  1. Toteuta konstruktori käyttäen alustelulistasyntaksia:

    • Sen tulee ottaa parametrina size.
    • Alustetaan dynaaminen kokonaislukutaulukko nimeltä grades annetulla size-arvolla.
    • Käytä for-silmukkaa, jossa indeksi i kulkee arvosta 0 arvoon size:
      • Aseta grades[i] = i + 1 esimerkkitiedoiksi.
  2. Toteuta yksi metodi calculateAverage:

    • Luo muuttuja sum, jonka alkuarvo on 0.
    • Käytä for-silmukkaa, jossa indeksi i kulkee arvosta 0 arvoon size ja käy läpi grades-taulukon:
      • Lisää grades[i] muuttujaan sum jokaisella kierroksella.
    • Laske keskiarvo kaavalla sum * 1.0 / size, jotta tulos on tyyppiä double.
    • Palauta keskiarvo.
  3. Toteuta destruktori:

    • Vapauta taulukolle varattu muisti komennolla delete[] grades.
    • Tulosta "Grades memory released." osoittaaksesi, että muisti on vapautettu.

Ratkaisu

Switch to desktopVaihda työpöytään todellista harjoitusta vartenJatka siitä, missä olet käyttämällä jotakin alla olevista vaihtoehdoista
Oliko kaikki selvää?

Miten voimme parantaa sitä?

Kiitos palautteestasi!

Osio 2. Luku 8
single

single

Kysy tekoälyä

expand

Kysy tekoälyä

ChatGPT

Kysy mitä tahansa tai kokeile jotakin ehdotetuista kysymyksistä aloittaaksesi keskustelumme

some-alt