Инкапсуляция (практика). Класс String

Слайд 2

Класс String Часто приходится работать с классами, объекты которых связаны с

Класс String

Часто приходится работать с классами, объекты которых связаны с блоками

данных в динамической памяти. Такая связь чревата «утечкой» памяти. Но классы дают разработчику все средства, чтобы её избежать. Для примера создадим класс, описывающий текстовую строку – благо, есть образец, - стандартный класс string.
Слайд 3

Начальная версия класса

Начальная версия класса

Слайд 4

Добавляем методы

Добавляем методы

Слайд 5

Геттеры / сеттеры

Геттеры / сеттеры

Слайд 6

Пример кода https://git.io/vo29j

Пример кода
https://git.io/vo29j

Слайд 7

Explicit-конструкторы

Explicit-конструкторы

Слайд 8

Explicit-конструкторы

Explicit-конструкторы

Слайд 9

Explicit-конструкторы Для предотвращения в таких ситуациях неявных преобразований типов вместе с

Explicit-конструкторы

Для предотвращения в таких ситуациях неявных преобразований типов вместе с конструкторами

преобразования используется ключевое слово explicit.
Если оно присутствует, то вместо неявного преобразования типов компилятор выдаст ошибку несоответствия типов.
Слайд 10

Пример на explicit https://git.io/vo2Q2

Пример на explicit
https://git.io/vo2Q2

Слайд 11

Что дальше? Задание на класс String: https://yadi.sk/i/RzBDOgMjsbef5

Что дальше?

Задание на класс String:
https://yadi.sk/i/RzBDOgMjsbef5