Головна

перевантаження операцій

  1.  Вплив господарських операцій на баланс
  2.  Вплив господарських операцій на бухгалтерський баланс
  3.  Вибір засобів технологічного оснащення (ТО) операцій;
  4.  Виконання арифметичних операцій з числами з фіксованою і плаваючою комою
  5.  Виконання операцій з БД
  6.  Вихід за рівень формальних операцій
  7.  Глава 43 Оподаткування лізингових операцій та проблеми розвитку лізингу

У C ++ операції визначені для вбудованих типів даних. перевантаження операцій - Це перевизначення дій операцій стосовно об'єктів конкретних класів.

Засобами перевантаження операцій є спеціальні функції-операції з ключовим словом operator. Синтаксис функції:

tip operator @ (t1 per1 [...]) // @ - перевантажувати операція

{...} // Tip - тип значення

// T1 per1 [...] - параметри функції

Функція-операція характеризується наступними властивостями:

- Перевантажує всі операції, крім (.), (. *), (::), (? :); операція присвоювання (=) вже визначена для будь-якого типу;

- Успадковується, крім функції-операції operator = ();

- Повинна бути або елементом-функцією класу, або зовнішньої функцією, але дружній даного класу;

якщо функція-операція є зовнішньою і дружній даного класу, то для бінарних операцій вона повинна мати два параметра, для унарних - один параметр; вираз obj1 @ obj2 інтерпретується як operator @ (obj1, obj2), вираз @obj інтерпретується як operator @ (obj);

якщо функція-операція є елементом-функцією даного класу, то тоді їй передається неявний покажчик this на поточний об'єкт класу, тобто вона вже має один неявний параметр, і саме перший; тому, для бінарних операцій вона повинна мати один параметр, для унарних - взагалі без параметрів; вираз obj1 @ obj2 інтерпретується як obj1.operator @ (obj2), тобто результат заноситься в obj1, а вираз @obj інтерпретується як obj.operator @ (), тобто результат заноситься в obj;

- Зазвичай використовує в якості параметрів посилання на об'єкти, а в якості значення, що повертається - значення об'єкта.

 




 Покажчики |  Структури, об'єднання, перерахування |  Засоби управління екраном і клавіатурою |  Операції і засоби обробки файлів |  Контроль операцій обробки файлів |  Сутність об'єктно-орієнтованого підходу |  Класи і об'єкти |  Конструктори і деструктори |  похідний клас |  Просте і множинне спадкування |

© um.co.ua - учбові матеріали та реферати