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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
defer
秘密
 Аватар для defer
555 / 235 / 3
Регистрация: 29.11.2010
Сообщений: 783
#1

Для чего const после phone() - C++

25.06.2012, 21:10. Просмотров 766. Ответов 4
Метки нет (Все метки)

C++ (Qt)
1
const char* phone()const {return phone_;}
Для чего const после phone()?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
25.06.2012, 21:10     Для чего const после phone()
Посмотрите здесь:

C++ Запишите в файл школьную таблицу умножения, после чего выведите данные из файла на экран.
C++ Можно ли использовать явное приведение типов для данных со спецификатором const?
Const после функции C++
Что означает const после круглых скобок функции C++
C++ С чего начать изучение С++ после C#?
C++ Разница между объявлениями const Person p1 и Person const p1
Введите с клавиатуры строку символов, после чего выведите ее на экран вертикально, а затем по диагонали C++
Найти наибольший элемент в каждой строке матрицы, после чего поменять его местами с диагональным C++
Const после функции C++
Ключевое слово const после декларации функции в классе C++
Как вызвать прегруженный const метод для статического объекта C++
Что такое static const и для чего он нужен? C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Jupiter
Каратель
Эксперт C++
6548 / 3968 / 226
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
Завершенные тесты: 2
25.06.2012, 21:14     Для чего const после phone() #2
Цитата Сообщение от defer Посмотреть сообщение
Для чего const после phone()?
const после phone() значит что метод не изменяет состояние объекта
lamerr
9 / 9 / 1
Регистрация: 05.04.2012
Сообщений: 26
25.06.2012, 21:16     Для чего const после phone() #3
Цитата Сообщение от Jupiter Посмотреть сообщение
const после phone() значит что метод не изменяет состояние объекта
...а если всё же попробовать изменить его внутри функции, произойдёт ошибка компиляции. По сути, это защита от ошибок разработчика.
soon
 Аватар для soon
2536 / 1301 / 81
Регистрация: 09.05.2011
Сообщений: 3,086
Записей в блоге: 1
25.06.2012, 21:19     Для чего const после phone() #4
Цитата Сообщение от defer Посмотреть сообщение
Для чего const после phone()?
Он показывает, что функция не изменяет данные в классе. Также может вызывать только константные методы
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
class Foo
{
    void foo() const
    {
 
    }
 
    const void fooNoConst()
    {
 
    }
 
    const void func() const
    {
        foo();
        //fooNoConst(); ERROR
    }
};
 
int main()
{
 
    return 0;
}
grizlik78
Эксперт С++
 Аватар для grizlik78
1890 / 1422 / 104
Регистрация: 29.05.2011
Сообщений: 2,977
25.06.2012, 21:24     Для чего const после phone() #5
Цитата Сообщение от lamerr Посмотреть сообщение
По сути, это защита от ошибок разработчика.
Не только. Это ещё позволяет вызывать эту функцию от константных объектов.
Yandex
Объявления
25.06.2012, 21:24     Для чего const после phone()
Ответ Создать тему
Опции темы

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