русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Указатель на текущий объект


Дата добавления: 2014-11-20; просмотров: 687; Нарушение авторских прав


Он описывается как this – это скрытый первый аргумент всех нестатических функций-членов. Всегда имеет тип “указатель на текущий класс”.

Использование блоков памяти

Ошибки области видимости возникают потому, что C++ освобождает выделенную для локальных переменных память автоматически. Для решения этой проблемы необходим блок памяти, контролируемый непосредственно программистом. В этом блоке можно выделять память под переменные и удалять их независимо от того, локальный это объект, или глобальный. Такой блок памяти называется кучей. Память в куче можно выделить, используя оператор new; он пишется вместе с типом объекта, под который нужно выделить память. Приведенный ниже пример выделяет из кучи память для переменной типа double.

double *child(void)

{

double *Var = new double;

return Var;

}

Теперь, несмотря на то что переменная Var имеет область видимости в пределах функции child() , память, на которую указывает эта переменная, не будет освобождена после выполнения функции. Выделение и освобождение памяти в куче осуществляется только явно. Освобождение памяти в куче выполняется с помощью команды delete, в данном случае delete Var;

Литература

1. Дэвис, Стефан Р. С++ для “чайников” / Стефан Р. Дэвис – М.: Издательский дом “Вильямс”, 2003. – 336с.

2. Хомоненко, А.Д. Программирование на С++ / В.П. Аверкин, А.И. Бобровский, В.В. Веснич, В.Ф. Радушинский, А.Д. Хомоненко –



<== предыдущая лекция | следующая лекция ==>
Обработка исключений | Раздел 3. ЭКОНОМИКА


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.513 сек.