Возникла проблема в реализации динамического массива списком блоков.
template <typename T>
Dynamic_Array {
private:
int size;
T *ar;
public:
...
};
Но меня смущает, что я буду внутри выделять память уже используя динамический массив. Прошу вас идею написания. Реализацию класса я смогу написать сам, просто хотелось бы узнать как должно выглядеть в хорошем варианте класс динамического массива.
Примерно так же, как стандартный вектор. Оператор квадратных скобок, добавление в конец, выкидывание из конца, обработка через итераторы как стандартных контейнеров, вставка в произвольную позицию по итератору.
Рекомендую придерживаться той же стратегии как у вектора при выделении памяти: если выделенный кусок закончился, выделить в 2 раза больше, если после удаления стал в 4 раза больше, чем требуется, перевыделить и взять меньший кусок (не уверен, какого размера).
Сборка персонального компьютера от Artline: умный выбор для современных пользователей