/
MorningKoffe
/
NewIntArray
Обзор
Документация
Войти
/
MorningKoffe
/
NewIntArray
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
master
IntegerArray.h
49 строк
1 KB
Tsidik Vitaliy
init
06 июн 2026, 21:06
06 июн 2026, 21:06
5788ef5
Код
Авторство
О чём код?
#pragma once #include <stdexcept> class bad_argument : public std::invalid_argument { public: explicit bad_argument(const std::string& msg) : invalid_argument(msg) {} }; class bad_length : public std::exception { public: const char* what() const noexcept override { return "bad_length: negative or zero length not provided for array"; } }; class bad_range : public std::out_of_range { public: explicit bad_range(size_t index) : std::out_of_range("bad_range: index out of range"), m_index(index) {} size_t index() const noexcept { return m_index; } private: size_t m_index; }; class IntegerArray { int* m_data; size_t m_size; public: explicit IntegerArray(size_t length); IntegerArray(const IntegerArray& other); IntegerArray& operator=(const IntegerArray& other); ~IntegerArray(); size_t size() const noexcept { return m_size; } int& at(size_t index); const int& at(size_t index) const; int& operator[](size_t index); const int& operator[](size_t index) const; void resize(size_t new_size); void insert(size_t pos, int value); void erase(size_t pos); };