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

const - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Обработка массива символов http://www.cyberforum.ru/cpp-beginners/thread704878.html
Создать символьный массив из 10-ти или меньшего кол-ва элементов,программа меняет местами второй и последний введенный элемент посмотрите пожалуйста , программа работает правильно или нет ? и есть ли какие-то замечания у Вас #include<iostream> #include<math.h> #include <stdio.h> #include <conio.h> #include<cstdlib> using namespace std;
C++ ошибку выдает aeroflot::naz is not accesible. ошибку выдает aeroflot::naz is not accesible. Модет у кого-то есть рабочая програма по аэрофлоту или исправьте пожалуста эту( на завтра очень нужно. #include <iostream.h> #include <string.h> #include <stdlib.h> class aeroflot { char naz; int number; char tip; http://www.cyberforum.ru/cpp-beginners/thread704869.html
Не работает перечисление C++
Сам код: #include <iostream> #include <string> using namespace std; #include <windows.h> #include <process.h> enum typ {CD,DVD}; class publication
C++ Создание игры на Visual C++
Здравствуйте, я вот подумал что в связи с тем, что я стал много времени тратить на игры, вместо практики программирования, стоит связать две деятельности вместе. И вот возникла масса вопросов. Меня не интересуют наставления типа : выбрать о чем будет игра, подумать над движком и т.п. Меня интересует возможная литература, статьи и т.п., так как я с графикой в С++ не связывался совершенно....
C++ enum и обращение с ним http://www.cyberforum.ru/cpp-beginners/thread704854.html
для логической структуризации программы заменил целый инт на enum(так как разнотипные данные с которыми приходится работать могут поменять свой порядок расположения и вообще программа расчитана на расширение ,и с логическими значениями приятней работать чем с числами). вот следственно появился вопрос - как происходит работа с enum, как с 4 байтовой переменной?
C++ Написать программу вычисления величины заряда написать программу вычисления величины заряда. Результат вывести с 8 знаками после запятой. Подготовить контрольный пример. Сила тока - 15.2 Ампера, время прохождения тока - 0.1 секунда, величина заряда - ? подробнее

Показать сообщение отдельно
rangerx
1908 / 1517 / 139
Регистрация: 31.05.2009
Сообщений: 2,876
21.11.2012, 23:09     const
Чтобы вам было понятно: представьте, что каждому методу класса, при вызове, в качестве неявного параметра передаётся указатель на объект, который этот метод вызывает, т.е.
C++
1
2
3
4
class SomeClass {
public:
    bool empty();
};
для компилятора выглядит как
C++
1
2
3
4
class SomeClass {
public:
    bool empty(SomeClass* this); 
};
C++
1
2
SomeClass sc;
if(sc.empty()) ... // для компилятора if(empty(&sc));
Указывая в конце метода const мы делаем этот неявный параметр константным
C++
1
bool empty() const; // для компилятора bool empty(const SomeClass* this)
Поэтому же принципу методы можно перегружать, различая какие методы будут вызываться для неконстантных объектов, а какие для константных. Общее правило таково:
eсли метод не должен менять значения полей своего класса, пишем const;
если метод может менять значения полей своего класса, const НЕ пишем;
если необходимо назначить различное поведение метода для константных и неконстантных объектов перегружаем его по const:
C++
1
2
void f(); // версия для неконстантных объектов
void f() const; // версия для константных объектов
 
Текущее время: 07:14. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru