Commit 176fd60e by Karsa Zoltán István

add extra tests

parent 60ca35f4
......@@ -17,31 +17,10 @@ Ugyanakkor a hagyományos "pooling" mintát kiterjesztjük további funkciókkal
## RString
Az első feladat egy `RString` nevű osztály elkészítése. Az osztálynak a következő publikus metódusokkal és konstruktorokkal kell rendelkeznie:
```c++
class RString {
public:
// Létrehoz a megadott kapacitással egy karaktertömböt
// A tömb első helyére egy \0-t rak
RString(size_t_ capacity);
// Létrehoz egy karaktertömböt strlen(str) + 1 mérettel
// majd odamásolja str tartalmát
RString(const char* str);
// Létrehoz egy karaktertömböt capacity mérettel,
// majd odamásolja az str string-et
// Ha a string nem fér bele, eldobja a neptun-kódodat
RString(const char* str, size_t capacity)
// Megadja a string méretét (strlen)
size_t size();
// Megadja a karaktertömb kapacitását
size_t capacity();
// Visszaadja a string memóriaterületére mutató pointert
operator char*() const;
};
```
A `RString` osztály fenti publikus metódusai tovább nem bővíthetőek. Természetesen gondoskodni kell a megfelelő dinamikus memóriakazelésről.
Az első feladat egy `RString` nevű osztály elkészítése. Az osztály megvalósítandó metódusait az `rstring.h` fájl tartalmazza. AZ `RString` osztály szabályos `\0`-val lezárt karakterláncokat reprezentál, ugyanakkor a mögöttes karaktertömb kapacitása szabadon megadható.
A `RString` osztály fenti publikus metódusai tovább nem bővíthetőek, ugyanakkor tetszőleges privát adattaggal/metódussal bővíthető. Természetesen gondoskodni kell a megfelelő dinamikus memóriakazelésről.
## StringPool interfész
......
......@@ -16,11 +16,11 @@
#include "rstring.h"
#include "pool.h"
#define ELKESZULT 1
#define ELKESZULT 0
/* ELKESZULT makró:
<= 3: RString tesztjei
>= 10: Összes teszt
<= 4: RString tesztjei
>= 13: Összes teszt
*/
int main() {
......
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