Commit 6747d95e by Szeberényi Imre

v0

parent 5d874eaa
......@@ -14,11 +14,11 @@ Ahol:
- t2 - *Ember\** típusú pointereket tárol *std::deque* sablon segítségével. Hiba esetén *std::out_of_range* kivételt dob.
- t3 - *Valami\** típusú pointereket tárol *std::list* sablon segítségével. Hiba esetén *MyClass* kivételt dob.
A Sablonparaméterként megadható sorozattárolónak az alábbi minimumkövetelményeknek kell megfelelnie:
Minimumkövetelmények a tárolásra használt osztályra vonatkozóan:
- A paraméterként átadott tárolótól elvárjuk, hogy legyen:
- létrehozható, megszüntethető, másolható, értékadható
- A paraméterként átadott tárolótól elvárjuk, hogy megvalósítja az alábbi metódusokat illetve típusokat:
- létrehozható, megszüntethető, másolható, értékadható.
- A paraméterként átadott tárolótól elvárjuk, hogy valósítsa meg az alábbi metódusokat illetve típusokat:
- *value\_type* - a tárolt adat típusa.
- *iterator* - iterátor.
- *const\_iterator* - konstans iterátor.
......@@ -27,7 +27,7 @@ A Sablonparaméterként megadható sorozattárolónak az alábbi minimumkövetel
- *push\_back()* - betesz egy új adatot a tárolóba - pontosabban az adat egy másolatát - a tárolt adatok után. Amennyiben helyhiány miatt ez nem sikerül, *std::bad_alloc* kivételt dob.
- *clear()* - törli a tárolót, azaz eldobja a tárolt adatokat, a tárolt darabszámot 0-ra állítja.
A fentieket felhasználva **valósítsa** meg (tegye elérhetővé) a *ClonableHeteroStore* osztály az alábbi publikus metódusokat illetve típusokat:
A fenti követelmények meglétét feltételezve **tervezze** meg a *ClonableHeteroStore* osztályt úgy, hogy az rendelkezzen az alábbi publikus metódusokkal, illetve illetve típusokkal:
- **const_iterator** - konstans iterátor.
- **begin()** - visszaad egy iterátort (*const\_iterator*) a belső tároló első elemére.
......@@ -48,7 +48,7 @@ Támogassa a többszörös értékadást! **Tételezze fel**, hogy a tárolóban
3. Tesztelje a megadott tesztprogrammal az új osztályt!
4. Elemezze a **ClonableTestClass**, a **ClonableTestClass1**, valamint a **ClonableTestClass2** osztályok megvalósítását a *clonable_testclass.h* állományban! A megvalósítás többszörös öröklést és virtuális alaposztályt használ. Értse meg, hogy miért van erre szükség!
5. A fentiek alapján hozzon létre klónozható baktériumokat, melyek kompatibilisek a **Bacterium**, valamint **Clonable** osztályokkal! Az osztályokat a *clonable_bacterium.h* fájlban implementálja!
6. Definiálja a **BACI\_IS\_VAN** makrót, fordítson és ismét teszteljen!
6. Projekt szinten definiálja a **BACI\_IS\_VAN** makrót, fordítson és ismét teszteljen!
4. Amennyiben a tesztek jól futnak, töltse fel a *JPorta* feladatbeadó rendszerbe a **clonable\_bacterium.h** és **clonable\_hetero\_store.hpp** fájlokat!
**Megjegyzések:**
......
/**
* \file: bacterium.h
* \file: testclass.h
*
* TestClass alaposztály és leszármazottjai
*/
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment