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

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

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

Функция оператор+ в классах - C++

27.01.2014, 21:54. Просмотров 402. Ответов 3
Метки нет (Все метки)

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
#include <iostream>
using namespace std;
class Operator
{
    private:
    int x;
    public:
    void SetX(int g);
    int GetX();
    Operator(int a);
    Operator operator+(Operator x1);
};
Operator Operator::operator+(Operator x2)
{
    Operator x3;
    x3.x = x + x2.x;
    return x3;
}
 
 
int Operator::GetX()
{
    return x;
}
 
int main()
{
    Operator y1(5);
    Operator y2(7);
    cout << y1 + y2 << endl;
    
    system("pause");
    return ;
}
Я не могу найти ошибку, как можно сделать так, чтобы я получил сумму 5 и 7?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.01.2014, 21:54     Функция оператор+ в классах
Посмотрите здесь:

Одинаковая функция в классах - C++
На примере покажу, что я имею ввиду. Есть три класса: А, В и С. Функция show одинаковая. Допустим, функция большая и классов куда...

Функция и оператор new - C++
Как сделать так чтоб все созданное через new в функциях(функциях классов,шаблонов) оставалось в памяти? Например я создал так шаблон ...

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

Дружественная функция-оператор, доступ к закрытым полям класса - C++
У меня есть класс MyClass, вот код: class MyClass { int x, y; public: MyClass(); friend ostream &amp; operator &lt;&lt; (ostream &amp;,...

Fstream в классах - C++
Проблема заключается в том, что я не могу использовать fsream в классе, ибо выдаёт ошибку. Код и текст ошибки ниже. Помогите пожалуйста (мб...

String в классах - C++
Доброго времени суток. Я создал класс, в котором есть несколько объектов типа string. Строка одного из этих объектов всегда заменяется на...

Исключения в классах - C++
Здравствуйте. Какими средствами правильней всего сделать обработку исключений в классах? /* например, эта функция */ int...

программа в классах - C++
помогите пожалуйста сделать программу в классах построить описание класса содежащего информацию о почтовом адресе организации....

константы в классах - C++
в классе используется константа типа double. Как правильно задать ее? как static const double внутри класса или просто написать...

Конструкторы в классах - C++
Здравствуйте уважаемые форумчане! Прошу Вас помочь мне уяснить работу конструкторов в классах! А точнее что нужно сделать что бы...

Подробнее о классах - C++
Извините если я не туда зашел. Я например хочу освоить на хорошем уровне классы. Ну в дальнейшем для написания начальных уровней игр, ну то...

Видимость в классах - C++
Дана программа #include&lt;iostream&gt; using namespace std; class a {protected: int a1; public: void fc() ...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
GuGo1991
267 / 261 / 93
Регистрация: 02.08.2012
Сообщений: 609
28.01.2014, 03:10     Функция оператор+ в классах #2
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 Op
{      
    public:
        int x;
        Op();
        Op(int);
        Op operator+(Op);
};
 
Op::Op()
{
}
 
Op::Op(int a)
{
    x = a;
}
 
Op Op::operator+(Op x2)
{
    Op x3;
    x3.x = x + x2.x;
    return (x3);
}
 
int main()
{
    Op y1(5);
    Op y2(7);
    Op answer;
    answer = y1 + y2;
    cout << answer.x << endl;
    
    system("pause");
    return 0;
}
dzrkot
zzzZZZ...
518 / 348 / 53
Регистрация: 11.09.2013
Сообщений: 1,995
28.01.2014, 09:59     Функция оператор+ в классах #3
Цитата Сообщение от bekabot Посмотреть сообщение
Я не могу найти ошибку, как можно сделать так, чтобы я получил сумму 5 и 7?
у вас private:int x;
а сам х в конструкторе не инициализируется, т.к. вы про него забыли и он генерируется по умолчанию.
aLarman
641 / 562 / 89
Регистрация: 13.12.2012
Сообщений: 2,109
28.01.2014, 10:19     Функция оператор+ в классах #4
Цитата Сообщение от GuGo1991 Посмотреть сообщение
Op Op::operator+(Op x2) // тут по ссылке лучше передавать
{
Op x3;
x3.x = x + x2.x;
return (x3);
}
C++
1
Op Op::operator+(Op &x2)
Yandex
Объявления
28.01.2014, 10:19     Функция оператор+ в классах
Ответ Создать тему
Опции темы

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