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

Перегрузка с методами - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Работа с матрицами http://www.cyberforum.ru/cpp-beginners/thread580582.html
Помогите решить,пожалуйста,завтра сдать надо.Напишите,пожалуйста,под borland c++(желательно 3.1). Данный двумерный массив целых чисел. Вставить в него строку из нулей между всеми строками, в которых количество положительных элементов равно количеству отрицательных. Всем заранее СПАСИБО!!!
C++ Разложение большего числа на отдельные В общем суть такова Имеем в переменной, допустим в "a" число. Не зная какое там число, (оно присвоено в результате определенных операций) зная лишь то, что оно может максимально состоять из 6 цифр. Надо как бы отгадать это число и разложить по переменым. Ну например в "а" число 37569. Нужно чтобы в "а1" присвоилось "3", в "а2" присвоилось "7", в "а3" присвоилось "5", в "а4" присвоилось "6",... http://www.cyberforum.ru/cpp-beginners/thread580580.html
Чтение текстового документа, обработка, запись нового C++
Задача: есть текстовый документ типа: 36745 375294567456 80293455906 ... Нужно прочитать отбросить домашние телефоны, оставив только мобильные и записать в файл. Помогите пожалуйста, может решали подобные задачи, я слабо представляю пока как это сделать,особенно ту часть где я прочитаю и буду сравнивать. Как мне прочитать строку и получить из её число или его вообще получать не надо?...
C++ Определенный интеграл
Для заданных границ интегрирования а и b вычислите значение определенного интеграла следующего вида: \int \sin^2{x}dx = \begin{cases} - \frac{\sin^{n-1}{\left(x\right)}\cos{x}}{n} + \frac{n - 1}{n} \int \sin^{n - 2} xdx, \ n > 2, \\ \frac{x}{2} - \frac{1}{4}\sin{\left(2x\right)}, \ n = 2, \\ -\cos{x}, \ n = 1 \end{cases} Все необходимые данные для функций должны...
C++ Структуры http://www.cyberforum.ru/cpp-beginners/thread580513.html
Ведомость абитуриентов, сдавших вступительные экзамены в универ- ситет, содержит ФИО абитуриента и его оценки. Определить средний балл по университету и вывести список абитуриентов, средний балл которых выше среднего балла по университету.
C++ Найти в строке слова, содержащие букву “s” Вводится строка, каждое слово которой отделяется от других слов одним или несколькими пробелами. Найти слова, содержащие букву “s”. подробнее

Показать сообщение отдельно
Alexex
0 / 0 / 0
Регистрация: 22.12.2011
Сообщений: 23
20.05.2012, 21:24     Перегрузка с методами
Здравствуйте. У меня проблема. Мне нужно перегрузить оператор "+", но перегрузить так, чтобы внутри конструкции перегрузки, вызвался метод "plus". Да вот.
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>
 
class Complex{
        double a,b;
public:
        Complex(double x=0,double y=0){
                a=x;
                b=y;
        }
        Complex plus(Complex &c);
                a=c.a;
                b=c.b;
                return *this;
        }
  };
 
 
Complex Complex::plus(Complex &t){
        Complex X;
        X.a=a+t.a;
        X.b=b+t.b;
        return X;
}
 
Complex Complex::operator +(Complex &C){
    Complex A;
    A=A.plus(C);
    return A;
}
 
 
int main (){        
        Complex A,B,Z;
    A=Complex(2,-6);
    B=Complex(-8,11);
    Z=A+B;
    std::cout << Z << std::endl;
}
У меня тут не получается, возвращается одно число, из суммы. Прошу помощи.

Добавлено через 2 часа 20 минут
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
#include <iostream>
 
class Complex{
        double a,b;
public:
        Complex(double x=0,double y=0){
                a=x;
                b=y;
        }
 
                Complex operator +(Complex &c);  
        Complex plus(Complex &c);
        const Complex& operator =(const Complex &c){
                a=c.a;
                b=c.b;
                return *this;
        }
  };
 
 
Complex Complex::plus(Complex &t){
        Complex X;
        X.a=a+t.a;
        X.b=b+t.b;
        return X;
}
 
Complex Complex::operator +(Complex &C){
    Complex A;
    A=A.plus(C);
    return A;
}
 
 
int main (){        
        Complex A,B,Z;
    A=Complex(2,-6);
    B=Complex(-8,11);
    Z=A+B;
    std::cout << Z << std::endl;
}
До этого скопировал немного не тот код.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 04:15. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru