C++ группа 2 — различия между версиями
Материал из SEWiki
Строка 39: | Строка 39: | ||
bool empty(); | bool empty(); | ||
size_t size(); | size_t size(); | ||
+ | }; | ||
+ | |||
+ | == 19.02.2016 == | ||
+ | |||
+ | Реализовать вектор со строгой гарантией исключений для push_back | ||
+ | |||
+ | template <class T> | ||
+ | class Vector | ||
+ | { | ||
+ | public: | ||
+ | operator[]() | ||
+ | push_back() | ||
+ | pop_back() | ||
+ | size() | ||
+ | reserve() | ||
+ | resize() | ||
}; | }; |
Версия 03:03, 19 февраля 2016
Опейкин Александр
+7-931-278-21-60
5.12.2015
Данные Файл:Schemed read data.gz Файл:New data.tgz
12.02.2016
Реализовать 3 класса
1. Массив фиксированного(на этапе компиляции) размера
template <...> class Array { public: Array() {} T & operator[]( size_t i ); T const& operator[]( size_t i ) const; size_t size() const; };
2. Специализацию массива Array для bool. Один bool должен занимать один бит.
3. Стек. Должен уметь работать поверх вашего Array
template <...> class Stack { public: T const& top() const; T & top(); void push(T const& t); void pop(); bool empty(); size_t size(); };
19.02.2016
Реализовать вектор со строгой гарантией исключений для push_back
template <class T> class Vector { public: operator[]() push_back() pop_back() size() reserve() resize() };