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

Перегрузка оператора == - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Строки: вывод кода введенного пользователем символа http://www.cyberforum.ru/cpp-beginners/thread113745.html
Написать программу, которая выводит код введенного пользователем символа. Программа должна завершать работу в результате ввода, например, точки.
C++ проверка двоичного числа написать программу которая проверяет является ли введенная с клавы строка двоичным числом http://www.cyberforum.ru/cpp-beginners/thread113742.html
C++ Циклы с пред. и пост. условием
1 - Составьте программу, суммирующую штрафное время команд при игре в хоккей. Выводить на экран суммарное штрафное время обеих команд после любого его изменения. После окончания игры выдать итоговое сообщение. 2 - Дано вещественное число A (> 1). Вывести наименьшее из целых чисел N, для которых сумма 1 + 1/2 + ... + 1/N будет больше A, и саму эту сумму. Одну задачу сделать с циклом...
C++ Вклады, простые и сложные проценты (вопрос из учебника С. Прата)
Изучаю книгу С. Прата. В главе 5 у него присутствует такая задача: Дафна сделала вклад на сумму $100 под простые проценты, которые составляют 10%. Итак, ежегодно ее вкладдаетдоход в сумме 10% от первоначального вклада, или $10: проценты = 0.1 x исходный баланс В то же время Клео сделала вклад на сумму $100 под сложные проценты, которые составляют 5%. Другими словами, 5% от текущего остатка, с...
C++ Урезать файл http://www.cyberforum.ru/cpp-beginners/thread113703.html
Есть бинарный файл fstream f(...) Надо обрезать его на/до нужного размера. Как? (желательно пример)
C++ System в Си++ Ребятя, помогите написать тот код в си++ ping logon.wowcircle.com -t я его писал system("ping logon.wowcircle.com -t"); но он почемуто не работал???... Просто в консоли выводил ping logon.wowcircle.com -t и так постоянно.. Помогите, беде очень благодарен подробнее

Показать сообщение отдельно
-Xeon-
2 / 2 / 0
Регистрация: 15.02.2010
Сообщений: 26
07.04.2010, 12:22     Перегрузка оператора ==
Пытаюсь перегрузить оператор == . Делаю так:
В классе:

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
class cData // класс дата
{
    int     year; // год 
    short   mounth; // месяц
    short   day; // день
 
    static int amount; // количество экземпляров класса
 
public:
    cData(); // конструктор по умолчанию
    //cData(int n_year, short n_mounth, short n_day); // конструктор с параметрами
    //cData(const cData &obj); // конструктор копирования
    ~cData(); // деструктор
    bool SetData(int n_year, short n_mounth, short n_day); //изменение значения
    string GetStrData(); // возвращает дату в виде строки
    static int GetAmount(); // возвращает количество экземпляров
 
    [COLOR="Red"]bool operator == (const cData & rhs) const;[/COLOR]
    bool operator != (const cData & rhs) const;
    bool operator < (const cData & rhs) const;
    bool operator > (const cData & rhs) const;
    cData & operator++();
};
 
bool operator == (const cData & rhs) const
{
    return ((day == rhs.day) && (mounth == rhs.mounth) && (year == rhs.year));
}
 
Потом в main() пишу:
 
           cData *data1 = new cData();
    cData *data2 = new cData();
 
 
    if(data1 == data2) 
        cout << "equal" << endl;
    else 
        cout << "not equal" << endl;

В data1 и data2 одинаковые значения при этом говорит, что не равны. Ставлю точку останова в опереторе и запускаю дебагер. Программа выполняется, а в оператор == не заходит даже. В чём проблема?
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 06:35. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru