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

Перегрузка "operator +" - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Применение циклов, условных операторов http://www.cyberforum.ru/cpp-beginners/thread25080.html
Я будущий студент компьютерных наук я ни разу не сталкивался с С++,и мне приходится изучать самостоятельно прогу и мне нужно решить несколько заданий мне главное узнать как пишется полностью...
C++ Проверить,число введено или нет. Ребята а как проверить ввел я число в массиве или символ??? http://www.cyberforum.ru/cpp-beginners/thread25054.html
C++ Поиск максимального элемента строки матрицы (функции)
Здравствуйте! Помогите пожалуйста с задачкой: сделать программу в функции которой будет высчитываться произведение максимальных эле¬ментов каждой строки прямоугольной матрицы а в основной программе...
C++ Маленький калькулятор
Собственно не работает if почему-то. Например когда вводишь число 7, то выполняется действие из пункта 5 # include <iostream.h> # include <iomanip.h> # include <math.h> int main() { int...
C++ Простые числа-близнецы http://www.cyberforum.ru/cpp-beginners/thread25022.html
Дан отрезок целых чисел от 2 до n. Найти все простые числа-близнецы(отличаются друг от друга на 2) Мой код тупой,недоделанный и тд.Но может там хоть есть какая-то идея правильная... // Близнецы.cpp...
C++ Описать вещественный массив из 7 элементов,заполнить с клавиатуры Описать вещественный массив из 7 элементов,заполнить с клавиатуры,вводить отрицательное и положительное значение,вычеслить среднее арифметическое положительное значение.Результаты вывести на... подробнее

Показать сообщение отдельно
TGrey[WoLf]
39 / 39 / 1
Регистрация: 14.09.2008
Сообщений: 685
05.03.2009, 22:49  [ТС]
Вне класса - друг?
В общем сделал и методом класса и другом и в обоих случаях ошибка
main.cpp(16) : error C2679: binary '=' : no operator defined which takes a right-hand operand of type 'int' (or there is no acceptable conversion)
А понял, фишка в Конструкторе... Оно неявно преобразует 13 в Human h(13)
а без этого никак? То конструкторов много выйдет почти одинаковых

Добавлено через 4 часа 16 минут 0 секунд
И все же, начал исправлять и оказалось, что оно не хочет преобразовывать число в класс... Возможно это из-за того что у меня не 1 конструктор?
Один из конструкторов
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
    Human(int a)
    {
        Age = a;
    }
// ...
    Human& operator=(Human &h)
    {
        //strcpy(Name, h.Name);
        return *this;
    }
// ...
    friend int operator+(Human &h, Human &h2);
// ...
    int operator+(Human &h, Human &h2)
    {
        //if(!h.Female && !h2.Female)
        //  cout<<"Emmm...";
            return 2;//h.Lastname;
    }
main.cpp(16) : error C2679: binary '=' : no operator defined which takes a right-hand operand of type 'int' (or there is no acceptable conversion)
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru