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

При перегрузке оператора для класса не получается использовать имя переменной такое же, как в описании класса - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Как обьявляется функция? http://www.cyberforum.ru/cpp-beginners/thread44989.html
Как объявить функцию в С++ Builder??? Например в Delphi это делается так : type TForm1 = class(TForm) function MyFunction(keyword : string) : longint; Потом нажимается сочетание клавиш Ctrl + Shift + C
C++ Объявление типов в h.-файлах Нужно объвить несколько переменных нестандартного типа (этот тип объявлен в библиотеке DirectX), компилятор ругается! Получается только с типом (int)! Подскажите примерчик с объявлением нестандартного типа! http://www.cyberforum.ru/cpp-beginners/thread44936.html
Как в функцию передать координаты C++
Есть функция: void enemy() { SetConsoleCursorPosition(console,coord1); cout << ' ' << flush;//Стираем if(dir1 == LEFT) { if(a!=1)coord1.X--; else dir1 = RIGHT;
C++ Сортировка массива структур
В общем, то что в названии темы, то и не получается. Не хочет присваиваться адрес предыдущей ячейки в массиве stud1.h #include <iostream> #include <stdlib.h> using namespace std; namespace grup { struct student
C++ Вопрос по мелочи http://www.cyberforum.ru/cpp-beginners/thread44874.html
Здравсвуйте! Когда-то , недавно, мы обсуждали тему среднее арифметическое числа. Я вроде понял её, но есть маленький нюанс. Вот код: #include <iostream> using namespace std; int main() { setlocale(0,""); int i = 0; double s = 0.0, vvod; char indicator = 'y';
C++ Решить систему неравенств (результат представить в виде массива) Задали практику в С++ но учить будем ее только в сентябре поэтому прошу решить легинькую задачку на массивы вычислить Z ={ X*Y; sqr(X)+sqr(Y) <1, sqrt(X*Y); sqr(X) + sqr(Y) >= 1 при Y=-5.5, X={1.8, -1.6, ... , 1.2}. Результат представить в виде массива. sqr( ) - к квадрату подробнее

Показать сообщение отдельно
Alucard12r
Сообщений: n/a
24.07.2009, 22:34     При перегрузке оператора для класса не получается использовать имя переменной такое же, как в описании класса
Прошу прощения,что не добавил сразу... Использовал Visual Studio 6.0 если что. Так вот, то,что привел я-это содержимое header-файла, main выглядела так:
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
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
#include "iostream"
#include "stdio.h"
#include "math.h"
#include "windows.h"
#include "malloc.h"
#include "myvektor.h"
using namespace std;
 
int main()
{
    treugolnik Treug,Dreug;
    vektor first,second,third,fourth;
    double iskomoe;
    bool reality;
    first.x = 2.0;
    first.y = 2.0;
    second.x = -2.0;
    second.y = 2.0;
    reality = Treug.make(first,second);
    if (reality)
    {
        cout << "All right :-)\n";
    }
    iskomoe = Treug.square();
    cout << iskomoe << "\n";
    third.x = 3.0;
    third.y = 3.0;
    fourth.x = 3.0;
    fourth.y = 3.0;
    reality = Dreug.make(third,fourth);
    if (reality)
    {
        cout << "ok\n";
    }
/* вот тут при исполнении кода вылетало с ошибкой,
в отладке как раз и показало,что не может извлечь 
значения из B и C там,где задается оператор ==  
менял местами некоторые комманды и пробовал вместо
оператора вычитания "B - C" расписать получение того же значения.
Все та же ошибка- не может считать данных с переменных B и C
при этом " D = Trrr.B - Trrr.C" работало нормально для второго аргумента,
но для первого нельзя (или я не знаю как) задать название объекта класса "treugolnik",
 из которого будут браться vektor's B и C,можно только прямо указать эти буквы.
такой вариант прокатывает для стандартных типов,но не прокатывает для классов
просьба как раз помочь с этим :))
*/
    if (Treug == Dreug)
    {
        cout << "triangles are equal\n";
    }
    if (third == fourth)
    {
        cout << "all right again :-)\n";
    }
    first = third - fourth;
    return 0;
}
P.S. сравнение двух треугольников недописано,но это несущественно, пока не узнаю, как быть с ошибкой - смысла дописывать нет никакого
 
Текущее время: 06:34. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru