Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
sanyaok
0 / 0 / 0
Регистрация: 18.12.2011
Сообщений: 21
#1

Перегрузка оператора - C++

18.12.2011, 17:37. Просмотров 590. Ответов 2
Метки нет (Все метки)

Доброго времени суток. Столкнулся с проблемой перегрузки оператора "++"
выдает ошибку в первой строке: postfix ‘const Counter operator++(const Counter&, const Counter&)’ must take ‘int’ as its second argument

собственно и сам код:

const Counter operator++(const Counter & lhs, const Counter & rhs)
{
Counter tmp(lhs);
tmp==rhs;
++tmp;
return tmp;
}

Прошу подскажите, кто знает в чем ошибка?
Заранее спасибо!
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
18.12.2011, 17:37
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Перегрузка оператора (C++):

Перегрузка оператора ‘=’ - C++
Подскажите, пожалуйста, можно ли как-то перегрузить оператор равно. Чтобы можно было его использовать как с правой, так и с левой...

Перегрузка оператора << - C++
Есть такой код. class matrix { public: ......; const double* operator(int) const; double* const operator(int); friend...

Перегрузка оператора - C++
Добрый день! Мне нужно перегрузить в классе двумерного массива оператор ++, чтобы она возвращал максимальный элемент массива. класс...

Перегрузка оператора + - C++
Не могу заставить работать перегруженный оператор + в функции CMoveByVector Point.h: #define POINT_H #include &lt;iostream&gt; ...

Перегрузка оператора = - C++
Ввести строку символов S1. Программа должна содержать перегруженную операцию “=”, использование которой скопирует S1 в S2 при следующих...

Перегрузка оператора + - C++
Помогите с перегрузкой оператора +. Нужно сложить два объекта - двумерные массивы. сArray operator + (сArray &amp;arr) { int size...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
DU
1483 / 1059 / 45
Регистрация: 05.12.2011
Сообщений: 2,279
18.12.2011, 18:23 #2
Правильное объявление операторов ++:
C++
1
2
Counter& operator++(); // префиксный
const Counter operator++(int); // постфиксный
Эти операторы не могут быть свободными ф-иями. Только как методы класса.
Вообще возвращаемые типы могут быть другими. а вот аргументы - нет.
0
sanyaok
0 / 0 / 0
Регистрация: 18.12.2011
Сообщений: 21
18.12.2011, 19:36  [ТС] #3
ааай, точно же...
спасибо!
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
18.12.2011, 19:36
Привет! Вот еще темы с ответами:

Перегрузка оператора << - C++
Пишу класс My_String #include &lt;iostream&gt; const int MAX = 1000; class My_String { private: char str; public:

Перегрузка оператора += - C++
Есть два класса: Vec4(вектор из 4х float) и Mat4(вектор из 4х Vec4). Проблема в том что при перегрузке в Mat4 операции += я получаю ошибку...

Перегрузка оператора = - C++
Здравствуйте! При попытке заменить объект пользовательского класса q4 на q6 в контейнере set появляется ошибка: error C2678: binary '=' :...

Перегрузка оператора - C++
Здравствуйте, друзья. Помогите пожалуйста найти ошибку, вернее я знаю где, но пока не понимаю как её исправить: //Добавить в строковый...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru