Írjon generikus FIFO osztályt, amely
- Képes elemeket tárolni (put)
- A legkorábban betett elemet adja vissza (get) eltávolítva azt a FIFO-ból
- Meg tudja mondani magáról, hogy üres-e (isEmpty)
- Az osztály legyen átadható érték szerint függvényparaméterként és az f1= f2=f3; értékadás működjön helyesen (f1, f2, f3 ugyanazzal a típussal példányosított FIFO template-ek)!
- Milyen követelményeket támaszt az osztály a tárolandó típusokkal szemben (pl. operator > rendelkezésre állása)?
- Írjon egy egyszerű, maximum 10 utasításból álló programrészletet, amely bemutatja az osztály szolgáltatásainak használatát. Hibakezelést nem kell implementálnia!
Írjon generikus Stack osztályt, amely
- Képes elemeket tárolni (push)
- A legutoljára betett elemet adja vissza (pop) eltávolítva azt a Stack –ből
- Meg tudja mondani magáról, hogy üres-e (isEmpty)
- Az osztály legyen átadható érték szerint függvényparaméterként és az s1= s2=s3; értékadás működjön helyesen (s1, s2, s3 ugyanazzal a típussal példányosított Stack template-ek)!
- Milyen követelményeket támaszt az osztály a tárolandó típusokkal szemben (pl. operator > rendelkezésre állása)?
Írjon egy egyszerű, maximum 10 utasításból álló programrészletet, amely bemutatja az osztály szolgáltatásainak használatát. Hibakezelést nem kell implementálnia!
Írjon generikus (template) halmaz (set) osztályt, amely
- Képes elemeket tárolni (insert), addig, amíg el nem fogy a memória. Ha az elem már benne van a halmazban, ne tegye bele kétszer!
- Eltávolít (remove) egy elemet a halmazból
- Meg tudja mondani egy elemről, hogy benne van-e a halmazban (isElement)
- Az osztály legyen átadható érték szerint függvényparaméterként és az s1=s2=s3; értékadás működjön helyesen (s1, s2, s3 ugyanazzal a típussal példányosított set template-ek)!
- Milyen követelményeket támaszt az osztály a tárolandó típusokkal szemben (pl. alapértelmezett konstruktor rendelkezésre állása)?
- Írjon egy egyszerű, maximum 10 utasításból álló programrészletet, amely bemutatja az osztály szolgáltatásainak használatát. Hibakezelést nem kell implementálnia!
Írjon generikus (template) n*m-es mátrixokat reprezentáló osztályt!
- Írjon konstruktort, ami paraméterként a mátrix méreteit kapja meg.
- A mátrixhoz lehessen hozzáadni, belőle n*m-es mátrixokat. Amennyiben a dimenziók nem megfelelőek, a függvények dobjanak kivételt.
- A mátrix egyes elemeit le lehet kérdezni és be lehet állítani a () operátor használatával. Pl: M(2, 4) = 5; ha M egy egész számokat tároló mátrix. Hibás sor, vagy oszlopindex megadása esetén kivételt kell dobni!
- átadható érték szerint függvényparaméterként!
- helyesen kezeli a többszörös értékadást (s1=s2=s3, ahol s1, s2, s3 ugyanazzal a típussal példányosított template-ek)!
- Milyen követelményeket támaszt az osztály az elemek típusaival szemben (pl. alapértelmezett konstruktor, operator+ rendelkezésre állása)?
- Írjon egy egyszerű programrészletet, amely bemutatja az osztály szolgáltatásainak használatát!
Írjon generikus (template) sztring (string) osztályt, amely
§ képes elemeket beszúrni (insert), addig, amíg el nem fogy a memória! Paraméterként vegye át a beszúrandó elemét és annak pozícióját! Ha az utóbbi nagyobb, mint a sztring hossza, akkor a keletkező üres helyeket a tárolandó típus alapértelmezett értékével töltse fel
§ képes két stringet egymás után másolni (concat)!
§ képes visszaadni egy adott indexű elemet (operator[]), de csak olvasásra! Ha az index érvénytelen, dobjon kivételt (felhasználhatja az STL kivételosztályát)!
§ Az osztály legyen átadható érték szerint függvényparaméterként és az s1=s2=s3; értékadás működjön helyesen (s1, s2, s3 ugyanazzal a típussal példányosított sztring template-ek)!
§ Milyen követelményeket támaszt az osztály a tárolandó típusokkal szemben (pl. alapértelmezett konstruktor rendelkezésre állása)?
§ Írjon egy egyszerű, maximum 10 utasításból álló programrészletet, amely bemutatja az osztály szolgáltatásainak használatát char típusra. Mutassa be a kivételkezelést is!
Megjegyzés: az osztály tárolja az elemek számát, mivel általános (generikus) esetben nem tudjuk megmondani, mi jelzi a string végét!
Írjon generikus (template) dinamikus tömb (vector) osztályt, amely
§ Képes elemeket tárolni (insertAt), addig, amíg el nem fogy a memória. A függvény vegyen át egy pozíciót paraméterként, ahova beszúrja az új elemet, és ha az nagyobb, mint a tömb mérete, a keletkező üres helyeket a tárolt típus alapértelmezett értékével töltse fel!
§ Eltávolít (removeAt) egy adott pozíciójú elemet a tömbből
§ Meg tudja mondani egy elemről, hogy benne van-e a tömbben (isElement)
§ Az osztály legyen átadható érték szerint függvényparaméterként és az v1=v2=v3; értékadás működjön helyesen (v1, v2, v3 ugyanazzal a típussal példányosított vector template-ek)!
§ Milyen követelményeket támaszt az osztály a tárolandó típusokkal szemben (pl. alapértelmezett konstruktor rendelkezésre állása)?
Írjon egy egyszerű, maximum 10 utasításból álló programrészletet, amely bemutatja az osztály szolgáltatásainak használatát. Hibakezelést nem kell implementálnia!