Difference between revisions of "Step 4 (S-11057)"
(Create page for step id=11057) |
|||
Line 1: | Line 1: | ||
Step on Stepik: https://stepik.org/lesson/558/step/4 | Step on Stepik: https://stepik.org/lesson/558/step/4 | ||
− | + | [[File:Step_4_(S-11057)_1.png|border|800px]] | |
[00:00 - 00:15] теперь давайте посмотрим как синтаксически можно перегружать операторы начнем с простого примера пусть есть некоторый класс вектор который задает вектор на плоскость на плоскости создается 2 координатами поэтому объектов данного класса будут во поле икс игрек | [00:00 - 00:15] теперь давайте посмотрим как синтаксически можно перегружать операторы начнем с простого примера пусть есть некоторый класс вектор который задает вектор на плоскость на плоскости создается 2 координатами поэтому объектов данного класса будут во поле икс игрек |
Latest revision as of 12:51, 7 August 2017
Step on Stepik: https://stepik.org/lesson/558/step/4
[00:00 - 00:15] теперь давайте посмотрим как синтаксически можно перегружать операторы начнем с простого примера пусть есть некоторый класс вектор который задает вектор на плоскость на плоскости создается 2 координатами поэтому объектов данного класса будут во поле икс игрек
[00:15 - 00:31] крыса дают соответственно но есть и для такого класса мы переопределяем я старик ведических операторов начни с простого это будет в норме оператор оператор 0 и - это оператор
[00:31 - 00:46] - который принимает 1 аргумент чтобы реализации данного оператора соответствовало математике мы будем вращать вектор направлен в обратную сторону аналогичным образом можно определить и
[00:46 - 01:04] бинарное сложение оператор + от 2 аргументов аргументов типа вектор в качестве зачем вы значение могу начать вектор с координатами являющимися сумме соответствующий когда ты сходных товаров
[01:04 - 01:20] данная оператор принимает 2 аргумента теплее но в принципе нас никто не заставляет а передавать в бинарной оператор аргумента 1 и того же типа то есть можно определить бинарной оператор вот аргументов разного типа
[01:20 - 01:37] таким образом можно например определить умножения вектора на число для этого давайте определим оператор звездочка аргументами вектор и естественно число тем образом мы зададим оператор умножение вектора на число
[01:37 - 01:55] виктор увеличены тарас аналогично можно определить оператор умножения а то есть мы просто меняем местами типы аргументов и таким образом умножением числа станет
[01:55 - 02:11] коммутативный раз мы сможем менять местами вектор и число в проверять для того чтобы реализовать этом здесь обратимся к определенному выше эктора то есть мы в реализации умножение числа на вектор множим
[02:11 - 02:28] вектора на число таким образом можно переопределять аналогичные ударные и бинарной операторы как арифметически так логические так описывает так и другие то есть важно понять что у нас на оператора то операторов
[02:28 - 02:43] 1 аргумента соответствующим названием бинарный оператор это оператор от 2 аргументов тоже соответствующим названием про то как определять унарный бинарные операторы сохранились в аттике менюшка позже поговорим но
[02:43 - 02:59] синтаксический должно быть понятно то есть если у вас есть бинарный оператора который мы хотим переопределить то мы просто определяем оператора с соответствующим именем а какие типы он будет принимать и какой тип он будет возвращаться это уже остается нам на выбор