![]() |
Модераторы: Daevaorn |
![]() ![]() ![]() |
|
kkkggg |
|
|||
Новичок Профиль Группа: Участник Сообщений: 11 Регистрация: 28.4.2006 Репутация: нет Всего: нет |
#include <iostream.h>
class complex { public: int r,i; complex (int re,int im) {r = re; i = im;} complex operator++(const complex&); }; complex complex::operator++(complex& ARG) { ARG.r = ARG.r + 1; ARG.i = ARG.i + 1; return *this; } int main () { complex a = complex(1,1); a++; cout << a.re << " " << a.im << endl; return 0; } Хотелось бы узнать, что сдесь не так? |
|||
|
||||
0x07L |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 272 Регистрация: 10.6.2006 Где: Москва Репутация: нет Всего: 5 |
В main имеем
Между тем в объявлении класса complex Добавлено @ 20:18 И еще. Операнд типа complex в метод operator++ передается неявно через this. operator++, насколько я понимаю, здесь не должен иметь аргументов. Добавлено @ 20:19 А еще похоже, что ты забыл const в определении operator++. |
|||
|
||||
Fedor |
|
||||
![]() Днепрянин ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2090 Регистрация: 8.2.2003 Где: Великий Репутация: нет Всего: 32 |
Преинкремент
Постинкремент
Это сообщение отредактировал(а) Fedor - 17.6.2006, 20:41 -------------------- Мы - Днепряне. Мы всех сильней. |
||||
|
|||||
0x07L |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 272 Регистрация: 10.6.2006 Где: Москва Репутация: нет Всего: 5 |
2_Fedor
Вот-вот |
|||
|
||||
LPBOY |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 228 Регистрация: 12.7.2005 Репутация: 20 Всего: 20 |
Fedor, если придерживать традиционной семантики, то префиксный инкремент должен возвращать ссылку complex&, а постфиксный const complex.
P.S. Хотя нужны ли вообще классу complex операторы инкремента, это еще вопрос. ![]() --------------------
Каждый человек по-своему прав, а по-моему нет... |
|||
|
||||
![]() ![]() ![]() |
Правила форума "С++:Общие вопросы" | |
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |