Zaawansowane CPP/Ćwiczenia 10: Inteligentne wskaźniki: Różnice pomiędzy wersjami
Z Studia Informatyczne
Przejdź do nawigacjiPrzejdź do wyszukiwania
(Brak różnic)
| |
Wersja z 16:44, 10 wrz 2006
Zadanie 1 Napisz testy sprawdzające działanie szablony inteligentnego wskaźnika opartego na zliczaniu referencji.
Zadanie 2 Napisz klasę wytyczna do wskaźnika Ref_ptr opartą o
listę referencji.
Zadanie 3 Napisz klasę wytyczną do wskaźnika ref_ptr opartą o licznik we wskazywanym obiekcie. Załóż, że obiekty wskazywane dziedziczą z klasy:
class Handle {
private:
size_t _count;
public:
Handle():_count(0){};
void add_ref() { ++_count;}
bool remove_ref() {--_count; return _count == 0;}
size_t count() const {return _count;};
};
Zadanie 4 Zaimplementuj iterator pozwalający wkładać wartości na koniec kontenera.
Zadanie 5 Zaimplementuj iterator realizujący przechodzenie po drzewie binarnym. Drzewo oparte jest o strukturę:
template<typename T> class binary_tree {
class node {
T _val;
node *_left;
node *_right;
}
node* _root;
}