Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

CCPP / CPP / Программирование на языке Си++. Модуль №5

.pdf
Скачиваний:
42
Добавлен:
23.03.2016
Размер:
265.94 Кб
Скачать

Программирование

на языке Си++

1

Модуль 5.

СТАТИЧЕСКИЕ ЭЛЕМЕНТЫ ДАННЫХ

Статические методы Константные объекты и методы

Правила инициализации и использования

2

Модуль 5. СТАТИЧЕСКИЕ ЭЛЕМЕНТЫ ДАННЫХ

Статические компоненты данных и методы (начало)

Статические компоненты данных в составе классов:

существуют в единственном экземпляре для всего класса, а не тиражируются для каждого из объектов;

допускают доступ только после их инициализации, когда им выделяется память;

могут использоваться до определения объектов «своего» класса (при этом адресоваться посредством квалифицированного имени);

подчиняются спецификаторам доступа public, private, protected;

для доступа к собственным и защищенным статическим компонентным данным могут использоваться статические компонентные функции

Определение статического компонента данных

static <имя типа> <идентификатор>;

Инициализация статического компонента данных

<имя типа> <имя класса>::<идентификатор> <инициализирующее выражение>;

3

Модуль 5. СТАТИЧЕСКИЕ ЭЛЕМЕНТЫ ДАННЫХ

Статические компоненты данных и методы (продолжение)

Доступ к общедоступным статическим компонентам данных класса без применения экземпляров

<имя типа>::<идентификатор>

Доступ к общедоступным статическим компонентам данных класса с применением экземпляра

<имя объекта>.<имя типа>::<идентификатор> <имя объекта>.<идентификатор>

Статические компонентные функции (методы) в составе классов

могут быть вызваны по квалифицированному имени до определения (или без использования) объектов «своего» класса;

Описание статической компонентной функции

static <имя типа> <идентификатор>

([<спецификация формальных параметров>]);

4

Модуль 5. СТАТИЧЕСКИЕ ЭЛЕМЕНТЫ ДАННЫХ

Статические компоненты данных и методы (окончание)

Вызов общедоступных статических функций класса без применения экземпляров

<имя типа>::<идентификатор>([<список фактических параметров>])

Вызов общедоступных статических функций класса с применением экземпляра

<имя объекта>.<имя типа>::<идентификатор> ([<список фактических параметров>])

<имя объекта>.<идентификатор> ([<список фактических параметров>])

5

Модуль 5. СТАТИЧЕСКИЕ ЭЛЕМЕНТЫ ДАННЫХ

Константные объекты и методы

Константные компонентные функции — методы класса,

которые не изменяют объект, на протяжении всего периода исполнения сохраняя его константность

Определение константной компонентной функции класса

<имя типа> <идентификатор>

([<спецификация формальных параметров>]) const { [<тело функции>] }

Описание константной компонентной функции класса

<имя типа> <идентификатор>

([<спецификация формальных параметров>]) const;

Статические константные компоненты данных могут инициализироваться в определении класса

static const <имя типа> <идентификатор> <инициализирующее выражение>;

6

Список литературы

[КР92] Керниган Б., Ритчи Д. Язык программирования Си / Пер. с англ. — М.: Финансы и статистика, 1992. — 272 с.

[КР06] Керниган Б., Ритчи Д. Язык программирования C / Пер. с англ. — М.:

Вильямс, 2006. — 304 с.

[ЛЛ01] Липпман С., Лажойе Ж. Язык программирования C++. Вводный курс.

— СПб.: Невский диалект, 2001. — 1104 с.

[Под03] Подбельский В.В. Язык Си++: Учеб. пособие. — 5-е изд. — М.: Финансы и статистика, 2003. – 560 с., ил.

[Под04] Подбельский В.В., Фомин С.С. Программирование на языке Си. – 2-е доп. изд. – М.: Финансы и статистика, 2004. – 600 с.

[Стр08] Страуструп Б. Язык программирования С++. Специальное издание.

— СПб.: Невский диалект, 2008. — 1104 с.

7