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

Почему конструктор вызывается при присвоении объекта другому объекту - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Специализация шаблона http://www.cyberforum.ru/cpp-beginners/thread1134460.html
Привет, у меня есть вот такой шаблон дерева: template <typename T = int> class Tree{ struct TreeItem{ // элемент дерева T info; // данные TreeItem* LSon; // указатель на...
C++ Соединение двух 32 битных блоков в 64 битный и обратно Есть переменная __unt64 и две переменных unsigned unsigned int. Могу ли я получить один 64 битный блок из двух 32 битных и обратно? Добавлено через 5 минут Вот пример из ГОСТовского шифрования: ... http://www.cyberforum.ru/cpp-beginners/thread1134451.html
Отсортировать матрицу C++
http://www.cyberforum.ru/cpp-beginners/thread985658.html Вот посмотрите, очень стало интересно я немного не понял условие объясните плиз кто понял
C++ Спроектируйте с использованием TDD класс CTVSet , моделирующий телевизор
Спроектируйте с использованием TDD класс CTVSet , моделирующий телевизор, который может находиться либо в выключенном, либо включенном состоянии. Находясь во включенном состоянии, телевизор способен...
C++ Спроектируйте с использованием TDD класс http://www.cyberforum.ru/cpp-beginners/thread1134420.html
Спроектируйте с использованием TDD класс CTVSet , моделирующий телевизор, который может находиться либо в выключенном, либо включенном состоянии. Находясь во включенном состоянии, телевизор способен...
C++ При помощи перегрузки функций сделать вывод заданного количества символов на экран Доброй ночи, друзья. Пытаюсь разобраться. Как при помощи перезагрузки функций сделать вывод заданного количества символов на экран? подробнее

Показать сообщение отдельно
Lynatik001
38 / 32 / 4
Регистрация: 28.09.2012
Сообщений: 620

Почему конструктор вызывается при присвоении объекта другому объекту - C++

31.03.2014, 02:30. Просмотров 277. Ответов 1
Метки (Все метки)

оператор+ выполняется нормально, но когда уже переменная в sum, на след шаге она вызывает конструктор, ибо у меня в примере 9 выходит. А в переменной лежит 45(конструктор выполняет ф-ю возведения в многочлен)
Как это понять? Не знал что присвоение вызывает конструктора
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
    mch::mch()
    {
        str = 0;
    }
    mch::mch(int tmp){
        str = 0;
        for(int i=0;i<=tmp;i++)
        {
            this->str += i;
        }
    }
 
mch mch::operator+(mch &R){
        int as= str + R.str;
         return str + R.str;
    }
 
    mch k1(2),k2(3),sum,minus,mno;
    sum = k1 + k2;
    cout << "k1 + k2 =  " << sum.str << endl;
Добавлено через 27 минут
на С# точно такой же пример сделал, и нормально работает... А на С++ что за)))
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru