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

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

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

Неявный вызов оператора - C++

20.06.2014, 01:37. Просмотров 499. Ответов 2
Метки нет (Все метки)

Дано комплексное число Его действительную и мнимую часть объявить в private конструктор и деструктор объявить в public потом дополнить класс перегрузкой префикного инкремента (++)

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
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
#include <vcl.h>
#include <iostream.h>
#include <conio.h>
#pragma hdrstop
 
//---------------------------------------------------------------------------
 
#pragma argsused
 
class complex
 {
   public:
     complex();   //конструктор
     ~complex () {}    //деструктор
     int GetltsVal() const { return itsVal; }
     void SetltsVal(int x) { itsVal = x; }
     void Increment() { ++itsVal; }
 
        int GetltsVall() const { return itsVall; }
     void SetltsVall(int x) { itsVall = x; }
     void Incrementl() { ++itsVall; }
 
 
    void operator++ () { ++itsVal,++itsVall; } // вот тут и идёт перегрузка
 
   private:
     int itsVal;
     int itsVall;
 } ;
 
complex::complex():
 itsVal(0)
  {}
 
   itsVall(int)
    {}
 
 
int main(int argc, char* argv[])
{
 
complex i,i1;
    cout << "Nachalnoe I= " << i.GetltsVal() << endl;  // начальное i=0
     i.operator ++();
 
      cout << "Nachalnoe I= " << i.GetltsVall() << endl;  // начальное i=0
     i1.operator ++();
 
 
    cout << "I uvelichili na odin I= " << i.GetltsVal() << endl;  // инкремент  ++ увеличивает iна еденицу
     ++i;
      cout << "I uvelichili na odin I= " << i1.GetltsVall() << endl;  // инкремент  ++ увеличивает iна еденицу
     ++i1;
 
 
       cout << "echo raz I uvelichili na odin I= " << i.GetltsVal() << endl;   // инкремент  ++ увеличивает  i ещёна еденицу
 
        cout << "echo raz I uvelichili na odin I= " << i1.GetltsVall() << endl;   // инкремент  ++ увеличивает  i ещёна еденицу
     system("pause");
     return 0;
     
}
В программе оператор вызван явно
Вопрос: как неявно вызвать перегрузку оператора operator++ ()
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.06.2014, 01:37
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Неявный вызов оператора (C++):

Неявный вызов конструктора копирования - C++
Здравствуйте, как можно неявно вызвать конструктор копирования 3 способами? Я только 1 найти смог. #include &lt;iostream&gt; class...

Неявный вызов конструктора шаблонного класса при операции сравнения - C++
Реализовал шаблонный класс целых чисел, для использования его в шаблонном классе дробей. Звучит жутковасто. :D Так вот, в классе целых...

Вызов прегруженного оператора вывода в поток из аналогичного оператора - C++
Программирую в c9.io с g++ получается тоже самое. Элементами стека(pointList) являются стеки(list) для которых уже определен оператор...

Вызов перегруженного оператора - C++
В классе Ellipse есть перезагрузка, не могу ее вызвать в main вот само задание: Создать класс Ellipse,содержащий следующие...

Вызов оператора базового класса - C++
Помогите, плиз! нужно в операторе= класса-наследника вызвать оператор= базового класса. Ошибка при вызове деструктора. Как исправить? ...

Вызов оператора= в производном классе - C++
#include &lt;iostream&gt; #include &lt;vector&gt; #include &lt;numeric&gt; using namespace std; template &lt;class T&gt; class Vector: public...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
alsav22
5419 / 4815 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
20.06.2014, 02:12 #2
Цитата Сообщение от sinobithug Посмотреть сообщение
Вопрос: как неявно вызвать перегрузку оператора operator++ ()
51, 53 строка.
1
sinobithug
0 / 0 / 0
Регистрация: 26.04.2014
Сообщений: 24
20.06.2014, 02:56  [ТС] #3
Спасибо
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
20.06.2014, 02:56
Привет! Вот еще темы с ответами:

Вызов оператора приведения базового класса - C++
Добрый день. У меня есть иерархия классов. class A: B { ... operator const char* () const; ...

Присваивание указателей, вызов оператора присваивания класса - C++
Если написать StrL **testStr; testStr = new StrL * ; testStr = new StrLBit(&quot;100001&quot;); testStr = new StrLBit(&quot;0101&quot;); testStr =...

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

Явный и неявный конструктор - C++
явный конструктор-это...? неявный конструктор-это...? спасибо.


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

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

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