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

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

Войти
Регистрация
Восстановить пароль
 
parkito
11 / 11 / 2
Регистрация: 22.03.2010
Сообщений: 692
#1

Постфиксные и префексные операции при перегрузке - C++

22.11.2014, 03:59. Просмотров 158. Ответов 1
Метки нет (Все метки)

Здравствуйте. Написал перегрузку.

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
#include<iostream>
using namespace std;
class A {
private:
    int a;
public:
    
    A(int b) {
        a=b;
    }
    void show() {
        cout<<a;
    }
    A operator++() {
         ++a;
         return A(a);
    }
 
};
int main() {
    A obj(5);
    //obj++; ошибка
    ++obj;
    obj.show();
    cin.get();
    cin.get();
    return 0;
}
Однако корректно работает лишь случай использования
C++
1
++obj;
Подскажите пожалуйста как нужно модифицировать программу, для того чтобы имелась возможность использования
C++
1
obj++
?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.11.2014, 03:59     Постфиксные и префексные операции при перегрузке
Посмотрите здесь:

Ошибка в перегрузке операции - C++
Здравствуйте, помогите пожалуйста исправить ошибка: выражение слева от &quot;.summa&quot; должно представлять класс, структуру или объединение ...

Ошибка при перегрузке + - C++
Что не так? error C2601: Matrica::operator +: недопустимые локальные определения функций #pragma once class Matrica { public: ...

Ошибка при перегрузке функций - C++
Помогите, пожалуйста. Вылетает ошибка floating point stack check на строчке 16 кода (код ниже). Summa.Real=a.Real+b.Real; Не могу понять,...

Ошибки при перегрузке операторов - C++
Ну не могу,не получается самостоятельно разобрать свои ошибки(( Они по большей части повторяются. Помогите пожалуйста. ошибки...

Выделение памяти при перегрузке - C++
#include &lt;iostream&gt; #include &lt;ctime&gt; #include &lt;cstdlib&gt; #pragma warning(disable:4101) //--------------------------------- ...

Ошибка при перегрузке операторов - C++
#include &lt;stdio.h&gt; #include &lt;conio.h&gt; class fraction { public: int numerator; int denominator; fraction(); ...

При перегрузке операторов не записывает значение - C++
Собственно вот мой код: class.h class Otrezku { public: Otrezku(); Otrezku(float , float , float , float ); ...

Умножение матриц при перегрузке (*) в классе - C++
В чём собственно проблема: При перегрузке умножения, в результирующей матрице выбивает мусор( если быть точным, то максимальное значение...

Константность ссылки в параметре при перегрузке оператора - C++
Здравствуйте! При создании класса комплексные числа операцию сложения определяю так complex operator + (complex&amp;a) { return...

Преждевременный вызов деструктора при перегрузке оператора + - C++
Изначальное задание: Используя списки написать программу, поддерживающую операцию сложения двух многочленов. Собственно все работает,...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Nosey
1346 / 397 / 107
Регистрация: 22.10.2014
Сообщений: 861
Завершенные тесты: 2
22.11.2014, 04:11     Постфиксные и префексные операции при перегрузке #2
parkito,
C++
1
2
3
4
5
6
7
8
9
10
11
12
    // префиксный инкремент
    A& operator++() {
        ++a;
        return *this;
    }
 
    // постфиксный инкремент
    A operator++(int) {
        A temp = *this;
        ++a;
        return temp;
    }
Ответ Создать тему
Опции темы

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