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

Нужен ли const? - C++

Восстановить пароль Регистрация
 
ITSteel
0 / 0 / 0
Регистрация: 10.02.2014
Сообщений: 2
10.02.2014, 18:03     Нужен ли const? #1
Объясните пожалуйста, для чего в перегрузке операции сравнения пишется const? Ведь если убрать, все равно будет работать

C++ (Qt)
1
2
3
bool operator == (const time &t1) const {
   return this->h == t1.h && this->m == t1.m && this->s == t1.s;
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
egor2116
 Аватар для egor2116
337 / 368 / 42
Регистрация: 20.01.2013
Сообщений: 1,100
10.02.2014, 18:06     Нужен ли const? #2
Ведь если убрать, все равно будет работать
Что бы нельзя было написать так
C++
1
2
3
4
bool operator == (const time &t1) const {
   this->h = -9999999999;/* что нибудь, т.е. изменить случайно значение */
   return this->h == t1.h && this->m == t1.m && this->s == t1.s;
}
Aloir
 Аватар для Aloir
216 / 216 / 13
Регистрация: 17.12.2010
Сообщений: 688
10.02.2014, 18:08     Нужен ли const? #3
разрешает оператор сравнения для константных обьектов данного типа.

пс: если вы про послединй const, если про первый, ответили выше.
ITSteel
0 / 0 / 0
Регистрация: 10.02.2014
Сообщений: 2
10.02.2014, 18:11  [ТС]     Нужен ли const? #4
Ну я про два const спрашивал
Yandex
Объявления
10.02.2014, 18:11     Нужен ли const?
Ответ Создать тему
Опции темы

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