Перевантаження операторів - це реалізація функцій або методів класу для роботи з об'єктами, що дозволяє використовувати операції, як-от арифметичні чи відношення, для об'єктів класу.
Дружня функція - функція, яка дозволяє звертатися до закритих полів класу.
Перевантаження операторів індексації
Квадратні дужки
Використовуються для доступу до елемента масиву.
Замість методів getter та setter, можна перевантажити оператор [] для доступу та зміни елементів.
Реалізація:
Метод класу повертає int за посиланням.
Синтаксис: int& operator[](int index).
Круглі дужки
Зазвичай використовуються для двовимірних масивів, оскільки не можна перевантажити подвійні квадратні дужки.
Вони можуть приймати будь-яку кількість аргументів, що їх унікальність.
Використовуються для зручності доступу до елементів двовимірного масиву або для виконання інших завдань.
Приклади реалізації:
Без аргументів: метод обнуляє елементи масиву.
Один аргумент: змінює всі елементи масиву на певне значення.
Інші особливості
Перевантаження виведення через оператор << можливе за допомогою дружньої функції.
Через дружню функцію можна перевантажувати оператори, які мають два аргументи (операнд ліворуч та праворуч).
Круглі дужки дають змогу вказувати від нуля до безлічі аргументів, що робить їх гнучкими для різних задач.
Наступні теми
Перевантаження оператора присвоювання.
Конструктор переміщення.
Висновки
Перевантаження операторів робить роботу з класами більш зручною та ефективною.
Використання індексації допомагає спростити код, надаючи доступ до елементів масиву через оператори.