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

Правильно ли реализованы операторы (в смысле логики)? - C++

Восстановить пароль Регистрация
 
hamlet-ss6
0 / 0 / 0
Регистрация: 20.12.2008
Сообщений: 10
23.01.2009, 19:52     Правильно ли реализованы операторы (в смысле логики)? #1
mik-a-el,
Отписался на форуме-теперь ответь пожалуйста))

C++
1
2
3
4
5
6
7
8
9
10
11
12
bool operator == (complex &c) 
{ 
if (re==c.re && im==c.im)
return 1;
return 0; 
} 
bool operator != (complex &c) 
{ 
if (re!=c.re && im!=c.im)
return 0;
return 1; 
}
правильно ли они реализованы (в смысле логики)???особенно !=
СПАСИБО!
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.01.2009, 19:52     Правильно ли реализованы операторы (в смысле логики)?
Посмотрите здесь:

Создайте класс Время, в котором реализованы операции сложения, вычитания, сравнения, ввода и вывод на экран C++
Не получается использовать правильно операторы C++
Как правильно записывать условные операторы и как прервать проверку при достижении результата? C++
Решение задач логики предикатов C++
C++ Алгебра логики
Как реализованы типы размера? C++
C++ Упрощение выражений алгебры логики
Как реализованы стандартные типы? C++
C++ Подскажите библиотеку, в которой реализованы все основные операции с комплексными матрицами (среда MS VS 2008)
C++ Как правильно перегрузить операторы для собственных классов?
C++ Как правильно перегружать операторы?
Проектирование (разработка логики приложения): как это делать правильно? C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Lord_Voodoo
Супер-модератор
 Аватар для Lord_Voodoo
8505 / 2172 / 61
Регистрация: 07.03.2007
Сообщений: 10,844
Завершенные тесты: 1
23.01.2009, 21:12     Правильно ли реализованы операторы (в смысле логики)? #2
вот с первым вполне согласен, а вот не равно ИМХО или надо ставить, если реальная или мнимая части комплексных чисел не равны, то и числа не равны
CheshireCat
Эксперт С++
2907 / 1235 / 78
Регистрация: 27.05.2008
Сообщений: 3,315
24.01.2009, 22:48     Правильно ли реализованы операторы (в смысле логики)? #3
Лично я реализовал бы это проще:
Код
bool operator==(const complex &c)   
{   
    if (re==c.re && im==c.im)  
        return true;  
    return false;   
}   

bool operator!=(const complex &c)   
{   
    return !operator==(c);
}
Somebody
2775 / 1588 / 142
Регистрация: 03.12.2007
Сообщений: 4,162
Завершенные тесты: 1
25.01.2009, 15:22     Правильно ли реализованы операторы (в смысле логики)? #4
Тогда уж сразу return (re==c.re && im==c.im)
CheshireCat
Эксперт С++
2907 / 1235 / 78
Регистрация: 27.05.2008
Сообщений: 3,315
25.01.2009, 21:52     Правильно ли реализованы операторы (в смысле логики)? #5
Кстати да, правильное замечание. У меня пойнт был в том, что operator != реализуется наиболее простым способом через отрицание результата operator ==.
Yandex
Объявления
25.01.2009, 21:52     Правильно ли реализованы операторы (в смысле логики)?
Ответ Создать тему
Опции темы

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