🗊 Презентация Управление памятью

Категория: Образование
Нажмите для полного просмотра!
Управление памятью, слайд №1 Управление памятью, слайд №2 Управление памятью, слайд №3 Управление памятью, слайд №4 Управление памятью, слайд №5 Управление памятью, слайд №6 Управление памятью, слайд №7 Управление памятью, слайд №8 Управление памятью, слайд №9 Управление памятью, слайд №10 Управление памятью, слайд №11 Управление памятью, слайд №12 Управление памятью, слайд №13 Управление памятью, слайд №14 Управление памятью, слайд №15 Управление памятью, слайд №16 Управление памятью, слайд №17 Управление памятью, слайд №18 Управление памятью, слайд №19 Управление памятью, слайд №20 Управление памятью, слайд №21 Управление памятью, слайд №22 Управление памятью, слайд №23 Управление памятью, слайд №24

Содержание

Вы можете ознакомиться и скачать презентацию на тему Управление памятью. Доклад-сообщение содержит 24 слайдов. Презентации для любого класса можно скачать бесплатно. Если материал и наш сайт презентаций Mypresentation Вам понравились – поделитесь им с друзьями с помощью социальных кнопок и добавьте в закладки в своем браузере.

Слайды и текст этой презентации


Слайд 1


Тема: Управление памятью Распределение памяти Создание и уничтожение объектов Инкапсуляция управления памятью
Описание слайда:
Тема: Управление памятью Распределение памяти Создание и уничтожение объектов Инкапсуляция управления памятью

Слайд 2


Операции new и delete Объект, размер в памяти которого заранее не известен, можно создавать в куче (или стеке) Операция new создает объект в куче...
Описание слайда:
Операции new и delete Объект, размер в памяти которого заранее не известен, можно создавать в куче (или стеке) Операция new создает объект в куче выделяет память вызывает конструктор возвращает указатель на объект (или NULL, если нет свободной памяти) Объект существует до его явного уничтожения операцией delete Операция delete уничтожает объект вызывает деструктор освобождает память

Слайд 3


Распределение памяти: время «Ч»
Описание слайда:
Распределение памяти: время «Ч»

Слайд 4


Использование new и delete
Описание слайда:
Использование new и delete

Слайд 5


Улучшение класса String Реализация строки с использованием динамически выделяемой памяти может быть скрыта в классе снимаются ограничения на длину...
Описание слайда:
Улучшение класса String Реализация строки с использованием динамически выделяемой памяти может быть скрыта в классе снимаются ограничения на длину строки рационально расходуется память Если принципы ООП соблюдены, то пользователю не потребуется вносить изменения в программу (но потребуется ее перекомпилировать) Разработчику потребуется проверить, перепрограммировать и заново отладить методы класса и функции-друзья.

Слайд 6


Пересмотренный класс String
Описание слайда:
Пересмотренный класс String

Слайд 7


Выделение памяти под объект (старая реализация)
Описание слайда:
Выделение памяти под объект (старая реализация)

Слайд 8


Выделение памяти под объект (новая реализация)
Описание слайда:
Выделение памяти под объект (новая реализация)

Слайд 9


Создание объектов типа String
Описание слайда:
Создание объектов типа String

Слайд 10


Инициализация объектов типа String
Описание слайда:
Инициализация объектов типа String

Слайд 11


Копирование объектов типа String
Описание слайда:
Копирование объектов типа String

Слайд 12


Уничтожение объектов типа String
Описание слайда:
Уничтожение объектов типа String

Слайд 13


Присваивание объектов типа String
Описание слайда:
Присваивание объектов типа String

Слайд 14


Операция присваивания объектов типа String
Описание слайда:
Операция присваивания объектов типа String

Слайд 15


Конкатенация строк
Описание слайда:
Конкатенация строк

Слайд 16


Использование закрытых методов В ряде методов класса приходится выполнять одно и то же действие: выделить участок динамической памяти заполнить ее...
Описание слайда:
Использование закрытых методов В ряде методов класса приходится выполнять одно и то же действие: выделить участок динамической памяти заполнить ее символьной строкой

Слайд 17


Методы класса String
Описание слайда:
Методы класса String

Слайд 18


«Приемчики» эффективности Операция конкатенации неэффективна: создается переменная both (вызов конструктора) манипуляции с динамической памятью...
Описание слайда:
«Приемчики» эффективности Операция конкатенации неэффективна: создается переменная both (вызов конструктора) манипуляции с динамической памятью возврат результата (вызов конструктора)

Слайд 19


Применим закрытый конструктор
Описание слайда:
Применим закрытый конструктор

Слайд 20


Закрытые методы класса String
Описание слайда:
Закрытые методы класса String

Слайд 21


РЕЗЮМЕ Классы с динамической памятью более гибкие и эффективные более сложные в реализации Простая реализация позволяет сосредоточиться на интерфейсе...
Описание слайда:
РЕЗЮМЕ Классы с динамической памятью более гибкие и эффективные более сложные в реализации Простая реализация позволяет сосредоточиться на интерфейсе Изменение реализации не требует изменений программ пользователей (только перекомпиляция) Динамические классы требуют нетривиальной реализации конструкторов деструктора операции присваивания

Слайд 22


Упражнение Изменить реализацию класса String так, чтобы длина строки определялась целым полем len, а сама строка была динамическим массивом символов,...
Описание слайда:
Упражнение Изменить реализацию класса String так, чтобы длина строки определялась целым полем len, а сама строка была динамическим массивом символов, но без терминального байта: class String { public: // те же методы класса private: int len; char* text ; }

Слайд 23


Лабораторная работа Создать класс intArray, представляющий массив целых чисел. Класс должен быть объявлен в файле intarray.h. Код методов поместите в...
Описание слайда:
Лабораторная работа Создать класс intArray, представляющий массив целых чисел. Класс должен быть объявлен в файле intarray.h. Код методов поместите в любой файл (или файлы), по своему усмотрению Спецификация класса intArray Размер массива Int_array должен задаваться при его создании: intArray ia(10); Доступ к элементам массива осуществляется с помощью операции []. (Заметим, что для этого не требуется метод operator=() ). ia[0] = 100; ia[1] = 10; Программа прерывается, если задается некорректный индекс: ia[9] = 17; // все нормально ia[5000] = 508; // программа прерывается

Слайд 24


Массивы типа intArray могут присваиваться; в этом случае, массив intArray , находящийся слева, получает размер и все элементы массива intArray ,...
Описание слайда:
Массивы типа intArray могут присваиваться; в этом случае, массив intArray , находящийся слева, получает размер и все элементы массива intArray , находящегося справа: Массивы типа intArray могут присваиваться; в этом случае, массив intArray , находящийся слева, получает размер и все элементы массива intArray , находящегося справа: intArray ia2(7); ia2[0] = -1; ia2 = ia; Если массив intArray передается функции по значению, функция получает копию этого массива: test(ia2); printf("ia2[9] should still be 17: %d\n", ia2[9]); // тестом является следующий код: void test(intArray copy) { printf("copy[9] should be 17: %d\n", copy[9]); copy[9] = -1; printf("copy[9] changed to -1: %d\n", copy[9]); }



Похожие презентации
Mypresentation.ru
Загрузить презентацию