Step 9 (S-11061)
Step on Stepik: https://stepik.org/lesson/558/step/9
[00:00 - 00:17] для определения оператор приведения к типу тоже используется специальный синтаксис напомним что данный оператор используется в тех случаях когда мы хотим задать привидение от типа а б и применять его стоит в тех случаях когда на этот тебя мы не можем не копать
[00:17 - 00:36] если бы мы могли повлиять на тебя то внутри тип б можно было бы определить конструктор от значения типа а если же этот тип б библиотечным например или некоторых встроенным чипом то тогда для приведения к этому типу можно определить оператора прилетели
[00:36 - 00:54] синтаксис оператора + не отличается от всех оставшихся операторов тем что в его сигнатуре не указывать возвращаемое значение так это делается для обычных методов да напомнить что оператор приведения это 1 из тех операторов которые должен
[00:54 - 01:09] перегружаться именно как метод давайте посмотрим например пусть есть класс стринг и мы хотим научиться переводить объекты типа стренг к значением типа тогда мы определим
[01:09 - 01:25] оператор будет называться оператор буд то есть вот возвращаемое значение тот тип котором привыкнуть он уже есть в названии метода этому его не нужно указывать как формально возвращаемое значение соответствующими но и
[01:25 - 01:40] при реализации данных это был просто проверять что строка не просто так они просто не равен 0 то значит вернем true если строка пуста было 30 фолс как можно такой метод используют давайте
[01:40 - 01:57] определим оператор приведения от класса строки к строке 4 c то есть к чиркунов сверточки таком случае нам потребуется написать оператор жарком звездочка это будет проведения
[01:57 - 02:12] строки и внутри реализации данного метода можно воспользоваться оператором при любом то есть данном случае мы проверим что строка не пуста если не пуста тогда мы вернем тот указатель который здесь хранятся
[02:12 - 02:31] а если строка пуста мы вернем ветеран соответствующий пустой строки ну потому что в противном случае мы бы вернули нулевой указатель и дальше кто то снаружи ему будет поэтому другом указатель обратиться это привело бы к плачевным последствиям
[02:31 - 02:50] замечу что в стандарте 2003 года для оператора привидениях типа нельзя указать ключевое слово explicit как это можно сделать при описании
[02:50 - 03:08] конструктор от 1 аргумент соответственно все преобразования которые создаются при помощи оператор приведения к типу они работы в том числе и неявно это было исправлено в стандарте 11 года но вот значит есть друг
[03:08 - 03:23] скачать программу для старого стандарта помнить о том что описание конструктор в напарники предпочтительно в том числе и потому что в данных дано конструктор можно указать слово explicit
[03:23 - 03:36] и таким образом избежать неявных преобразований с оператор приведения типа такого то там starting пройдет 1 можно указать слово список и все будет хорошо