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

Предупреждение при перегрузке оператора - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Drawing operation was attemted when there was no current window http://www.cyberforum.ru/cpp-beginners/thread1179160.html
Написал программу, которая строит один из трех графиков по выбору пользователя (1, 2 или 3). Если пользователь выбирает номер графика, не предусмотренного в программе (например нажимает цифру 4), то...
C++ Функция чтения из файла Написал программу которая в зависимости от выбора пункта меню, записывает данные в файл или читает их. Все было нормально пока не дошел до функции чтения из файла. Сначала хотел чтоб выводилась... http://www.cyberforum.ru/cpp-beginners/thread1179159.html
C++ Сортировка. Заполнить матрицу по столбцам сверху вниз
Все элементы с заданным значением в правой верхней области матрицы(по столбцам сверху вниз) Подскажите, пожалуйста. Я не могу придумать, как это осуществить. Создать второй массив и записывать туда...
Сортировка двумерного массива Методом Шелла (по убыванию) C++
Необходимо написать код программы которая сортирует двумерный массив методом Шелла по убыванию. Я нашел код только для одномерного массива. Помогите переделать его для двумерного массива, пожалуйста....
C++ Ошибка при построении графиков http://www.cyberforum.ru/cpp-beginners/thread1179138.html
Здравствуйте. Мне необходимо написать программу, которая строила бы один из двух графиков функции по выбору пользователя. То есть имеются две функции: 1)y=a*x*x*x+b*x+c 2)y=a*cos(x+b)+c Пользователь...
C++ Связка структур, разработка функций Есть проблема. Есть 3 бинарных файла Subjects.txt Student.txt Mark.txt Есть 3 структуры: Код: struct Student { char Student_Name; char Student_Surname; char Student_Code; подробнее

Показать сообщение отдельно
TanaTiX
Модератор
2746 / 1592 / 146
Регистрация: 19.02.2011
Сообщений: 5,737

Предупреждение при перегрузке оператора - C++

17.05.2014, 21:53. Просмотров 580. Ответов 12
Метки (Все метки)

Есть вот такой код для созданный для обучения

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
#include <iostream>
 
using namespace std;
 
class complex{
private:
    double _re;
    double _im;
public:
    complex(){
        _re = 0;
        _im = 0;
    }
    complex(double re){
        _re = re;
        _im = 0;
    }
    complex(double re, double im){
        _re = re;
        _im = im;
    }
private:
    friend ostream &operator << (ostream &output, complex &c){
        output<<"[complex(" << c._re << ", " << c._im << ")]";
        return output;
    }
    friend complex &operator + (complex &a, complex &b){
        complex c (a._re + b._re, a._im + b._im);
        return c;
    }
};
 
int main()
{
    complex c(5, 6);
    cout << "Hello World!" << endl<<c<<endl;
    return 0;
}
Выдает предупреждение на перегрузку оператора +
..\Test-01\main.cpp: In function 'complex& operator+(complex&, complex&)':
..\Test-01\main.cpp:28:17: warning: reference to local variable 'c' returned [-Wreturn-local-addr]
complex c (a._re + b._re, a._im + b._im);
Что не так и как бороться?
Заранее спасибо.

Не по теме:

ЗЫ. компилирую в Qt (настройки по умолчанию), но вроде это не принципиально...

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