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

Переопределение операторов как член-класса и как дружественная функция - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Массив.Помогите решить. http://www.cyberforum.ru/cpp-beginners/thread542525.html
задан целочисленный массив U(17) найти нечетные элементы, которые встречаются больше одного разу.Вивесты эти элементы и их индексы. Буду благодарен любой помощи.
C++ Программирование задач обработки структур и файлов помогите пожалуйста! Даны сведения о студентах группы: ФИО студента, дата рождения студента, место рождения студента. Вывести список группы по убыванию года рождения студента. http://www.cyberforum.ru/cpp-beginners/thread542518.html
Процедуры функции.не знаю как решить. C++
Решить с помощью процедуры-функции.Буду рад любой помощи. заданные действительные числа m,n.Вычислить (рис 7), где (рис 7-1).
C++ strtok
как с помощью функции strtok вывести последнее слово
C++ нужно удалить из строки наибольшее и наименьшее слово http://www.cyberforum.ru/cpp-beginners/thread542504.html
нужно разделить сроку на слова и вывести строку без этих слов. я делаю так: сначала запоминаем каждое слово в эелементе массива и длину этого слова в свой элемент массива #include <stdio.h> #include <conio.h> #include <string.h> #incluse <stdlib.h> void main() {char st="Babak Kirilo Bodnar Ivan Boxonko Nazar Bik Ivan Gavrilyuk Ivan Gzhegockij Roman Gishka"; char *slovo; ...
C++ Не происходит обмена значениями. В чем проблема? #include <iostream> using namespace std; void change(int &a, int &b); int main() { int a=1,b=2; подробнее

Показать сообщение отдельно
Merovingian
54 / 54 / 5
Регистрация: 24.09.2011
Сообщений: 149
08.04.2012, 16:50     Переопределение операторов как член-класса и как дружественная функция
Цитата Сообщение от VladSharikov Посмотреть сообщение
C++
1
friend Int& operator--(Int&);
Определение сделал таким:
C++
1
2
3
4
5
Int& operator--(Int &operand) {
    Int result;
    result.data -= 1;
    return result;
}
К слову: Вы возвращаете ссылку на локальный объект result. Нужно возвращать не ссылку, а объект в таком случае, т.к. после завершения функции, вызывается деструктор для созданного объекта, а на что тогда ссылка? - На уже не существующий объект!
Еще... зачем Int &operand передаёте если он не используется?

Цитата Сообщение от VladSharikov Посмотреть сообщение
Как добиться того, чтобы операция работала просто так
C++
1
item--;
Очень просто.
C++
1
2
3
4
5
6
7
8
9
10
11
Int& Int::operator--() // префиксный
{
    ++data;
    return *this;
}
const Int Int::operator++(int) // постфиксный
{
    Int temp(*this);
    ++data;
    return temp;
}
 
Текущее время: 06:46. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru