ВУЗ:
Составители:
Рубрика:
49
Перегрузка операции присваивания
Операция отличается тремя особенностями:
операция не наследуется;
операция определена по умолчанию для каждого класса в качест-
ве операции поразрядного копирования объекта, стоящего справа от знака
операции, в объект, стоящий слева.
операция может перегружаться только в области определения
класса. Это гарантирует, что первым операндом всегда будет леводопус-
тимое выражение.
Формат перегруженной операции присваивания:
имя_класса& operator=(имя_класса&);
Отметим две важные особенности функции operanor=. Во-первых, в
ней используется параметр-ссылка. Это необходимо для предотвращения
создания копии объекта, передаваемого через параметр по значению. В
случаи создания копии, она удаляется вызовом деструктора при заверше-
нии работы функции. Но деструктор освобождает распределенную память,
еще необходимую объекту, который является аргументом. Параметр-
ссылка помогает решить эту проблему.
Во-вторых, функция operator=() возвращает не объект, а ссылку на
него. Смысл этого тот же, что и при использовании параметра-ссылки.
Функция возвращает временный объект, который удаляется после завер-
шения ее работы. Это означает, что для временной переменной будет вы-
зван деструктор, который освобождает распределенную память. Но она
необходима для присваивания значения объекту. Поэтому, чтобы избежать
создания временного объекта, в качестве возвращаемого значения исполь-
зуется ссылка.
Создание приложений в Borland C++ х.0х
*Проекты и узлы.
Проект это файл, содержащий все необходимое для построения
конечного продукта: установленные параметры, информацию о целевой
среде и о входных файлах. Файл проекта имеет расширение ide.
Термин “узел” применяется для обозначения различных объектов,
находящихся в окне проекта. Каждый узел может зависеть от одного или
большего количества узлов. Это означает, что до обработки такого узла,
узлы, от которых он зависит, должны быть успешно обработаны. Самый
верхний узел в иерархии узлов называется целью. Можно внести больше,
чем одну целевую программу в файл .ide. Рекомендуется сохранять в од-
ном проекте файлы, связанные по смыслу.
Страницы
- « первая
- ‹ предыдущая
- …
- 45
- 46
- 47
- 48
- 49
- …
- следующая ›
- последняя »