🗊 Презентация Перегрузка операций

Категория: Образование
Нажмите для полного просмотра!
Перегрузка операций, слайд №1 Перегрузка операций, слайд №2 Перегрузка операций, слайд №3 Перегрузка операций, слайд №4 Перегрузка операций, слайд №5 Перегрузка операций, слайд №6 Перегрузка операций, слайд №7 Перегрузка операций, слайд №8 Перегрузка операций, слайд №9 Перегрузка операций, слайд №10 Перегрузка операций, слайд №11 Перегрузка операций, слайд №12 Перегрузка операций, слайд №13 Перегрузка операций, слайд №14

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

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


Слайд 1


Тема: Перегрузка операций Оформление перегрузки операций Правила перегрузки операций Выбор типа функции-операции (функция-член или функция-друг)...
Описание слайда:
Тема: Перегрузка операций Оформление перегрузки операций Правила перегрузки операций Выбор типа функции-операции (функция-член или функция-друг) Модификация класса String

Слайд 2


Правила перегрузки операций Для перегрузки операции op надо определить функцию с именем operatorop. При перегрузке операции нельзя изменить ее...
Описание слайда:
Правила перегрузки операций Для перегрузки операции op надо определить функцию с именем operatorop. При перегрузке операции нельзя изменить ее приоритет, ассоциативность и количество связанных ею операндов Для вызова используется символ операции: Пример. Пусть для типа String функция concat заменена перегруженной операцией “+”. Тогда конкатенация строк s1 и s2 будет записываться как s1+s2

Слайд 3


Некоторые особенности Можно перегружать следующие операции: + – * / % ^ & | ~ ! = < > += –= *= /= %= ^= &= |= > >>= [ ] ( ) new new[ ] delete delete[...
Описание слайда:
Некоторые особенности Можно перегружать следующие операции: + – * / % ^ & | ~ ! = < > += –= *= /= %= ^= &= |= > >>= [ ] ( ) new new[ ] delete delete[ ] Следующие операции не могут быть перегружены : “ :: ” , “ . ” , “ .* ” , “ ?: ” Для перегруженных операций “ ++ ” и “ – – ” пре- и постфиксная формы неразличимы Операции “ = ” , “ [ ] ” , “ ( ) ” , “ –> ” должны быть методами

Слайд 4


Использование перегруженных операций Операнды передаются в функцию перегруженной операции как вызывающий объект и аргумент (если операция является...
Описание слайда:
Использование перегруженных операций Операнды передаются в функцию перегруженной операции как вызывающий объект и аргумент (если операция является функцией-членом класса) s1+s2 эквивалентно s1.operator+(s2) как аргументы (если операция не является функцией-членом класса s1+s2 эквивалентно operator+(s1, s2) Возвращаемое значение функции – значение выражения

Слайд 5


Перегрузка операций
Описание слайда:
Перегрузка операций

Слайд 6


Обратите внимание на: Тип операндов для операции “ + ”: a+b, а не &a+&b хотя бы один аргумент перегруженной операции должен иметь тип класса...
Описание слайда:
Обратите внимание на: Тип операндов для операции “ + ”: a+b, а не &a+&b хотя бы один аргумент перегруженной операции должен иметь тип класса Неэффективность передачи операндов при вызове операции “ + ”: по значению, а не через указатель Присваивание переменных разных и одинаковых типов String firstname, name; firstname = “Bilbo”; // использует operator=(char*) name = firstname; // использует умолчание Возвращаемое значение перегруженной операции присваивания определяется выбором синтаксиса a=b; if( (a=b) == c ) {…}

Слайд 7


Определение функции operator=
Описание слайда:
Определение функции operator=

Слайд 8


Функция operator+( String, String )
Описание слайда:
Функция operator+( String, String )

Слайд 9


Функция operator+( String , char* )
Описание слайда:
Функция operator+( String , char* )

Слайд 10


Функция operator+( char* , String )
Описание слайда:
Функция operator+( char* , String )

Слайд 11


Использование операций класса
Описание слайда:
Использование операций класса

Слайд 12


РЕЗЮМЕ В С++ можно определять функции-операции для разрабатываемых типов данных Позволяет писать изящный простой и понятный код Нельзя изменить...
Описание слайда:
РЕЗЮМЕ В С++ можно определять функции-операции для разрабатываемых типов данных Позволяет писать изящный простой и понятный код Нельзя изменить приоритет, число операндов или ассоциативность определяемой операции Нельзя придумать новые операции Нельзя переопределить операции встроенных типов Хотя бы один аргумент должен быть типа класса Не всегда реализуемы в виде методов

Слайд 13


Упражнение Изменить в классе String методы is_the_same_as и is_different_from на операции “==” и “!=”. Прототипы функций имеют вид: int opetor!=(...
Описание слайда:
Упражнение Изменить в классе String методы is_the_same_as и is_different_from на операции “==” и “!=”. Прототипы функций имеют вид: int opetor!=( String ); int opetor==( String ); Протестируйте следующий синтаксис:

Слайд 14


Перегрузка операций, слайд №14
Описание слайда:



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