пергрузка operator+ и operator+= |
Здравствуйте, гость ( Вход | Регистрация )
пергрузка operator+ и operator+= |
Litkevich Yuriy |
21.4.2010, 12:48
Сообщение
#1
|
разработчик РЭА Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94 |
Дошла очередь до освоения перегрузки этих операторов:
operator+= operator+ В книге Герберта Шилдта по С++, обе эти оператора объявляются и реализуются, как члены класса. А вот у тролей почему-то operator+ повсеместно используется как связанный не-член класса (т.е. описан просто в этом же заголовочнике), ну и соответственно он имеет два аргумента, а не один. Пример: Связанный не-член класса
член класса
Как же правильнее поступать? Делать operator+ членом класса или связанным не-членом obj1 + obj2 + obj3 + ... тут пардон, перепутал с operator= и конструкцией вида obj1 = obj2 = obj3 Я планировал сделать такой перегруженный оператор:
|
|
|
Iron Bug |
22.4.2010, 14:13
Сообщение
#2
|
Профессионал Группа: Модератор Сообщений: 1611 Регистрация: 6.2.2009 Из: Yekaterinburg Пользователь №: 533 Спасибо сказали: 219 раз(а) Репутация: 12 |
а в таком случае, где они должны быть объявлены? Я пока вижу в разных примерах, что они объявлены в том же заголовочнике что и сам класс, только "под ним" да, всё правильно. там они и должны объявляться. и включать все заголовочники на классы, которые в них используются. но на этапе линковки неиспользуемые функции отбросятся. а если засунуть методы внутрь класса, то тогда придётся ещё и линковать всё, что к классу относится, с твоей библиотекой. впрочем, это существенно только если предполагается многократное использование класса в разных программах. |
|
|
AD |
22.4.2010, 15:06
Сообщение
#3
|
Профессионал Группа: Участник Сообщений: 2003 Регистрация: 4.2.2008 Из: S-Petersburg Пользователь №: 84 Спасибо сказали: 70 раз(а) Репутация: 17 |
На мой взгляд, уже на таком профессиональном уровне, что ты, книгу Шилдта не стоит использовать (даже на уровне справочника). Лучше уже Страуструпом пользоваться. Так по его книге говорится, что операторы +, - и их варианты лучше делать не-членами класс, а вот += -= членами класса.
|
|
|
Текстовая версия | Сейчас: 29.11.2024, 4:14 |