Keresés

Új hozzászólás Aktív témák

  • b.kov

    senior tag

    válasz choco01 #4056 üzenetére

    Ennek a pointernek a segítségével hozod létre az egyes kölcsönzőkhöz tartozó tömböket, amiknek az eleme "kolcsonzes" típusúak. Tehát ha pontosabbak akarunk lenni, akkor azt is lehet mondani, hogy a k pointered ennek a tömbnek a fejelemére mutat. A k[i] pedig a fejelemtől i. távolságra lévő elemre.

    Ennek a pointernek pontosan azért kell privátnak lennie, mivel minden egyes "kolcsonzo" példány létrehozásával egy file-ból olvasod be a kölcsönzéseket. Ezek ugye statikus adatok, amiken később nem szeretnél vátloztatni. Tehát ne lehessen azt mondani, h pl. "mintaKolcsonzo" objektumon keresztül, a 3. kolcsonzés idejét megváltoztatod. Tehát:

    kolcsonzo mintaKolcsonzo("inputFile_1");

    Ekkor beolvasod ugye a fájlból a statikus adatokat. Nem lenne jó, ha ezután tudnál ilyet csinálni:
    mintaKolcsonzo.k[2]->datum = "Buddha szobor";

    Persze létezik igény fájlból beolvasott adatok utólagos módosítására (sőt), viszont ez akkor sem szép megoldás. Arra külön setter függvényeket szokás írni, csakúgy mint a mostani getter függvények.

    Tehát az előző példában ha megengednénk a dátum módosítását, akkor így lenne mondjuk szép:

    mintaKolcsonzo.modifyDate(2, "2018.02.03");
    Ahol ez első paraméter a kölcsönzés száma, a második pedig az új kölcsönzési dátum.

  • choco01

    addikt

    válasz choco01 #4056 üzenetére

    Továbbá ezt sem értem hogy miért nevezzük ezt a konstruktornak: kolcsonzo(char fnev[]); mert hát más is néz ki ehhez hasonlan.. pl.: int GetMagellan(); és akkor ehhez is lehetne egy ~GetMagellan();-t destruktornak írni..? mivan ha nem csinálok konstruktort hanem csak int kolcsonzo(char fnev[]);-et írok?

    bocs a dupláért..

Új hozzászólás Aktív témák