Перегрузка оператора присваивания в программировании — это процедура копирования величин из объекта в объект. 1
Существует два основных способа перегрузки операторов: 1
Оператор присваивания обязательно определяется в виде функции класса, потому что он неразрывно связан с объектом, находящимся слева от «=». 5 Определение оператора присваивания в глобальном виде сделало бы возможным переопределение стандартного поведения оператора «=». 5
Пример перегрузки оператора присваивания для класса, содержащего одиночные переменные. 1 Объявлен класс Complex, который содержит пару внутренних скрытых (private) переменных. 1 При помощи этих переменных сформирована вещественная и мнимая части комплексного числа. 1 Внутри класса Complex выполнено объявление операторной функции: Complex operator= (Complex cm) { // ... }
. 1 Она выполняет перегрузку оператора присваивания = для данного класса. 1 Когда будет осуществляться вызов оператора присваивания для объектов (экземпляров), которые принадлежат классу Complex, то последует вызов именно этой операторной функции. 1
Ещё один пример — перегрузка оператора присваивания для класса, содержащего массив чисел. 1 Для класса CArrayFloat100 выполняется реализация операторной функции operator=(), перегружающей массив чисел вида float. 1 Операторная функция выполняет пошаговое назначение элементов массивов. 1