Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Двумерные динамические массивы.
- Задание 42. Реализовать шаблоны функций для линейно выделенного двумерного массива для:
- - создания массива
- - удаления массива
- - вывода массива на экран
- - заполнения массива случайными числами
- - добавления строки по указанному индексу, а так же возможность инициализировать добавленные элементы одномерным массивом
- - добавления столбца по указанному индексу, а так же возможность инициализировать добавленные элементы одномерным массивом
- - удаление строки по указанному индексу
- - удаление столбца по указанному индексу
- Добавление/удаление приводит к перевыделению памяти! Не забывайте правильно копировать исходное содержимое массива.
- Помните, двумерный массив выделен линейно, одним большим куском, новый массив с добавлениями/удалениями так же должен быть линейно выделен!
- Всесторонне протестируйте результат.
- Не забывайте корректно "разбирать" массив по окончании работы, то есть освобождать из под него память.
- Рекомендованные сигнатуры функций:
- template <typename T>
- void addRowArr2DLinear(T**& container, int& ySize, int xSize, int rowPos, T* newRow = nullptr)
- template <typename T>
- void addColumnArr2DLinear(T** container, int ySize, int& xSize, int columnPos, T* newCol = nullptr)
- template <typename T>
- void deleteRowArr2DLinear(T**& container, int& ySize, int xSize, int rowPos)
- template <typename T>
- void deleteColumnArr2DLinear(T** container, int ySize, int& xSize, int columnPos)
- Двумерные динамические массивы.
- Задание 43. Реализовать шаблоны функций для выделенного ОТДЕЛЬНЫМИ ЧАСТЯМИ двумерного массива для:
- - создания массива
- - удаления массива
- - вывода массива на экран
- - заполнения массива случайными числами
- - добавления строки по указанному индексу, а так же возможность инициализировать добавленные элементы одномерным массивом
- - добавления столбца по указанному индексу, а так же возможность инициализировать добавленные элементы одномерным массивом
- - удаление строки по указанному индексу
- - удаление столбца по указанному индексу
- Добавление/удаление приводит к перевыделению памяти! Не забывайте правильно копировать исходное содержимое массива.
- Помните, двумерный массив выделен ЧАСТЯМИ, новый массив с добавлениями/удалениями так же должен быть выделен ЧАСТЯМИ!
- Всесторонне протестируйте результат.
- Не забывайте корректно "разбирать" массив по окончании работы, то есть освобождать из под него память.
- Рекомендованные сигнатуры функций:
- template <typename T>
- void addRowArr2D(T**& container, int& ySize, int xSize, int rowPos, T* newRow = nullptr)
- template <typename T>
- void addColumnArr2D(T** container, int ySize, int& xSize, int columnPos, T* newCol = nullptr)
- template <typename T>
- void deleteRowArr2D(T**& container, int& ySize, int xSize, int rowPos)
- template <typename T>
- void deleteColumnArr2D(T** container, int ySize, int& xSize, int columnPos)
Add Comment
Please, Sign In to add comment