| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C/C++: Общие вопросы > oveloading operator = |
| Автор: bel_nikita 21.3.2004, 19:12 | ||||||
Вопрос в следующем. Есть струтура:
Есть перегруженный оператор =. Использую для обнуления. Почему так работает:
А так нет:
|
| Автор: Дрон 21.3.2004, 19:18 | ||
| В первом случае у тебя идёт присваивание. И всё действительно прекрасно работает. Во втором случае у тебя инициализация, т.е. должен вызываться конструктор с параметром int. А он у тебя не определён.
|
| Автор: bel_nikita 22.3.2004, 00:21 |
| А, ну, понятно. Тогда глупо мне вообще оператор перегружать. |
| Автор: sdoc 22.3.2004, 23:14 |
| оператор перегружать никогда не глупо |
| Автор: Guest 23.3.2004, 09:27 |
| sdoc |
| Автор: bel_nikita 23.3.2004, 09:35 | ||||||
sdoc
Ну, вот, пример:
И зачем мне перегружать оператор присваивания?
Может, ты имел ввиду конструктор копий? |
| Автор: Гость_sdoc 23.3.2004, 11:12 |
| оопс! ты прав(а) - тут используется конструктор. но и я тоже прав - если ты уже делаешь конструктор копий, то тогда может лучше сделать оператор присваивания - и использовать его в конструкторе!... |