![]() |
|
Модераторы: Daevaorn |
![]()
|
|
| knut |
|
||||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 588 Регистрация: 7.2.2006 Репутация: нет Всего: нет |
Добрый день.
Есть простая перегрузка + .Но вот ошибки какие то непонятные. Где дырка?
--------------------
|
||||||
|
|||||||
| chaos |
|
|||
![]() Серийный программист ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2979 Регистрация: 7.7.2004 Где: Екатеринбург Репутация: 6 Всего: 44 |
лажа какая то с конструктором по умолчанию
Добавлено @ 14:38 не ! гоню Добавлено @ 14:39 покажи уж весь класс |
|||
|
||||
| knut |
|
||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 588 Регистрация: 7.2.2006 Репутация: нет Всего: нет |
только не надо говорить у меня все компилится --------------------
|
||||
|
|||||
| Fazil6 |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1653 Регистрация: 3.5.2006 Где: Минск Репутация: 35 Всего: 60 |
так ведь компилится. не видно в коде где реализация конструктора поумолчанию, которым создается локальный объект в COverload::operator + А в остальном, должно собираться Это сообщение отредактировал(а) Fazil6 - 14.11.2006, 15:21 |
|||
|
||||
| Partizan |
|
|||
![]() Let's do some .NET ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 2828 Регистрация: 19.12.2005 Где: Санкт-Петербург Репутация: 4 Всего: 67 |
гммм....а линкер разве не на деструктор ругается?
-------------------- СУВ, Partizan. |
|||
|
||||
| Kuvaldis |
|
|||
![]() механик-вредитель ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1189 Регистрация: 16.6.2006 Где: Минск Репутация: 11 Всего: 61 |
knut,
1. в конструкторе ты, как я понял, хотел сделать значения по умолчанию 20, 10 Ошибка в том, что у тебя имена формальных параметров совпадают с полями класса Причем инициализация по умолчанию делается так, как я показал ниже в коде 2. По правилу хорошего тона, если ты переопределяешь хотя бы один из конструкторов, то нужно ЯВНО описать и все остальные конструкторы и деструктор. При возвращении значения из перегруженной функции operator + работает конструктор копий (которого у тебя нет) Первоначально я думал, что ошибка именно в этом. Но оказалось, что это было не критично, а критичен был пункт 1. Делать нужно так
Это сообщение отредактировал(а) Kuvaldis - 14.11.2006, 19:21 -------------------- Помни - когда ты спишь, враг не дремлет Спи чаще и дольше, изматывай врага бессоницей |
|||
|
||||
| knut |
|
||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 588 Регистрация: 7.2.2006 Репутация: нет Всего: нет |
Давайте друзя пасширем тему
Вот есть класс
вот как для контейнера перегрузить оператор []? --------------------
|
||||
|
|||||
| JackYF |
|
|||
![]() полуавантюрист ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 5814 Регистрация: 28.8.2004 Где: страна тысячи озё р Репутация: 18 Всего: 162 |
В классе... Вот тебе я вся перегрузка. Место int в списке параметров тоже можешь любой тип написать. |
|||
|
||||
| knut |
|
||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 588 Регистрация: 7.2.2006 Репутация: нет Всего: нет |
JackYF,
в смысле так
--------------------
|
||||
|
|||||
| JackYF |
|
|||
![]() полуавантюрист ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 5814 Регистрация: 28.8.2004 Где: страна тысячи озё р Репутация: 18 Всего: 162 |
Ну ради бога...
|
|||
|
||||
| knut |
|
||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 588 Регистрация: 7.2.2006 Репутация: нет Всего: нет |
в смысле... --------------------
|
||||
|
|||||
| JackYF |
|
|||
![]() полуавантюрист ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 5814 Регистрация: 28.8.2004 Где: страна тысячи озё р Репутация: 18 Всего: 162 |
Ну в плане можно и так...
Я же конкретную реализацию не писал. Или это был не вопрос, а мысли вслух - 3 постами выше? |
|||
|
||||
| knut |
|
||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 588 Регистрация: 7.2.2006 Репутация: нет Всего: нет |
но вот проблемма одна возникает с преоброзованием типов. при return e.
i инт а функция возврошает COverload. менаю COverload на инт тоже не помогает. --------------------
|
||||
|
|||||
| JackYF |
|
|||
![]() полуавантюрист ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 5814 Регистрация: 28.8.2004 Где: страна тысячи озё р Репутация: 18 Всего: 162 |
Стоп! А зачем ты объявляешь m_overload в функции? Что оно тебе возвратит-то?
Добавлено @ 18:50 В объявлении и в реализации у тебя сигнатуры одинаковые? Добавлено @ 18:50 Короче, кидай полный код сейчас, который есть, будем править. |
|||
|
||||
| knut |
|
||||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 588 Регистрация: 7.2.2006 Репутация: нет Всего: нет |
ну да.
и тй элемент вектора. --------------------
|
||||||
|
|||||||
![]()
|
| Правила форума "С++:Общие вопросы" | |
|
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |