Различия
Показаны различия между двумя версиями страницы.
— | reshenie_zadachi_10 [2025/07/06 12:39] (текущий) – создано - внешнее изменение 127.0.0.1 | ||
---|---|---|---|
Строка 1: | Строка 1: | ||
+ | ====== Задача 10. Класс динамического массива. ====== | ||
+ | **Задача 10:** Создайте класс динамического массива, | ||
+ | < | ||
+ | /* | ||
+ | * File: | ||
+ | * Author: darkfire | ||
+ | * | ||
+ | * Created on December 11, 2010, 7:32 PM | ||
+ | */ | ||
+ | |||
+ | #include < | ||
+ | #include < | ||
+ | |||
+ | /* Создайте класс динамического массива, | ||
+ | * за границы массива. | ||
+ | * Перегрузите операторы: | ||
+ | * ++ (добавление элемента в конец массива), | ||
+ | * -- (удаление элемента из конца массива). | ||
+ | */ | ||
+ | using namespace std; | ||
+ | |||
+ | class A{ | ||
+ | int size; | ||
+ | int *a; | ||
+ | public: | ||
+ | A(int size);// | ||
+ | A(const A & | ||
+ | ~A(){// | ||
+ | delete [] a; | ||
+ | } | ||
+ | int Get () const {// метод выводит размер динамического массива | ||
+ | return size; | ||
+ | } | ||
+ | int & | ||
+ | | ||
+ | } | ||
+ | A operator--(); | ||
+ | A operator++(); | ||
+ | A operator+(const A &); | ||
+ | A operator=(const A &); | ||
+ | |||
+ | }; | ||
+ | |||
+ | A::A(int size){// | ||
+ | this-> | ||
+ | a = new int [size]; | ||
+ | for (int i = 0; i < size; i++) | ||
+ | a [i] = i + 1; | ||
+ | } | ||
+ | A::A(const A & | ||
+ | size = aA.size; | ||
+ | a = new int [size]; | ||
+ | for(int i = 0; i<size; i++) | ||
+ | a[i] = aA.a[i]; | ||
+ | } | ||
+ | A A:: | ||
+ | // | ||
+ | size-=1; | ||
+ | int *b=new int [size]; | ||
+ | for (int i=0; | ||
+ | b[i]=a[i]; | ||
+ | } | ||
+ | delete [] a; | ||
+ | a=b; | ||
+ | return *this; // | ||
+ | } | ||
+ | A A:: | ||
+ | // | ||
+ | size+=1; | ||
+ | int *b=new int [size]; | ||
+ | for (int i=0; | ||
+ | b[i]=a[i]; | ||
+ | } | ||
+ | b[size-1]=size;// | ||
+ | delete [] a; | ||
+ | a=b; | ||
+ | return *this; // | ||
+ | } | ||
+ | A A:: | ||
+ | size = aA.Get()+this-> | ||
+ | A temp(size); | ||
+ | return temp; | ||
+ | } | ||
+ | A A:: | ||
+ | size = aA.size; | ||
+ | // | ||
+ | a = new int [size]; | ||
+ | for(int i = 0; i<size; i++) | ||
+ | a[i] = aA.a[i]; | ||
+ | return *this; // | ||
+ | } | ||
+ | |||
+ | int main() { | ||
+ | int i; | ||
+ | A object(12); | ||
+ | cout<<" | ||
+ | for(i=0; | ||
+ | cout<< | ||
+ | } | ||
+ | cout<<" | ||
+ | --object; | ||
+ | --object; | ||
+ | --object; | ||
+ | --object;// | ||
+ | cout<< | ||
+ | for(i=0; | ||
+ | cout<< | ||
+ | } | ||
+ | cout<<" | ||
+ | ++object; | ||
+ | ++object;// | ||
+ | cout<< | ||
+ | for(i=0; | ||
+ | cout<< | ||
+ | } | ||
+ | cout<<" | ||
+ | A C(0); | ||
+ | A B(5); | ||
+ | cout<<" | ||
+ | C=object+B; | ||
+ | |||
+ | for(i=0; | ||
+ | cout<< | ||
+ | } | ||
+ | cout<<" | ||
+ | |||
+ | return (EXIT_SUCCESS); | ||
+ | }; | ||
+ | </ | ||
📌 Удобный подбор VPS по параметрам доступен на DIEGfinder.com - официальном инструменте проекта DIEG. Это часть единой экосистемы, созданной для того, чтобы помочь быстро найти подходящий VPS/VDS сервер для любых задач хостинга.
📌 Для тестирования скриптов, установщиков VPN и Python-ботов рекомендуем использовать надежные VPS на короткий срок. Подробнее о быстрой аренде VPS для экспериментов - читайте здесь.
💥 Подпишись в Телеграм 💥 и задай вопрос по сайтам и хостингам бесплатно!7 Самых Популярных Статей
- Как запустить скрипты и веб-приложения на Python
- Что такое страны TIER 1,2,3
- 7 способов сравнения файлов по содержимому в Windows или Linux
- Установка и тестирование веб-панели HestiaCP
- Nginx простые примеры конфигурации
- top, htop, atop определение загрузки ОС (Load average, LA)
- Использование rsync в примерах
7 Самых Популярных Обзоров
- Хостинг для Python-скриптов и приложений
- ТОП 4 лучших антидетект браузеров (Бесплатные & Платные)
- Подборка купонов (промокоды) на хостинг, антидетект браузеры
- Обзор THE.Hosting (PQ Hosting): надежный хостинг с профессиональной поддержкой
- Хостинг в России
- Хостинг в Европе
- Обзор браузера Dolphin {anty} для мультиаккаунтинга