69732

Статичні елементи класу

Домашняя работа

Информатика, кибернетика и программирование

Пам’ять під статичне поле виділяється один раз при його ініціалізації незалежно від числа створених об’єктів і навіть при їх відсутності і ініціалізується за допомогою операції доступу до області дії а не операції вибору визначення повинне бути записано поза функціями...

Украинкский

2014-10-09

25.5 KB

1 чел.

Самостійне вивчення

Тема 9: Статичні елементи класу

За допомогою ідентифікатора static можна описати статичні поля та методи класу. Їх можна розглядати як глобальні змінні або функції, які доступні тільки в межах області класу.

Статичні поля

Статичні поля застосовуються для зберігання даних, загальних для всіх об'єктів класу, наприклад, кількості об'єктів або посилання на розділяємий всіма об'єктами ресурс. Ці поля існують для всіх об'єктів класу в єдиному екземплярі, тобто не дублюються. Нижче перераховані особливості статичних полів.

  Пам'ять під статичне поле виділяється один раз при його ініціалізації незалежно від числа створених об'єктів (і навіть при їх відсутності) і ініціалізується за допомогою операції доступу до області дії, а не операції вибору (визначення повинне бути записано поза функціями):

class A{

public:

static int count;   // Оголошення в класі

}:

int А::count;      // Визначення в глобальній області

                        // За замовчуванням ініціалізується нулем

// int А::count = 10;     Приклад ініціалізації довільним значенням    

Статичні поля доступні як через ім'я класу, так і через ім'я об'єкту:

А *а, b;

...

cout << A::ccount << a->count << b.count;

// Буде виведене одне і те ж

На статичні поля розповсюджується дія специфікаторів доступу, тому статичні поля, описані як private, не можна змінити за допомогою операції доступу до області дії. Це можна зробити тільки за допомогою статичних методів.

Пам'ять, яку займає статичне поле, не враховується при визначенні розміру об'єкту за допомогою операції sizeof.

Статичні методи

Статичні методи призначені для звернення до статичних полів класу. Вони можуть звертатися безпосередньо тільки до статичних полів і викликати тільки інші статичні методи класу, тому що їм не передається прихований покажчик this. Звернення до статичних методів робиться так само, як до статичних полів — або через ім'я класу, або, якщо хоча б один об'єкт класу вже створений, через ім'я об'єкту.

class A

{

static int count; // Поле count - приховане

public:

static void inc_count()

{

count++;

}

};

А::int count;                 // Визначення в глобальній області

void f()

{

А а;

// a.count++ - не можна, поле count приховане

// Зміна поля за допомогою статичного методу: a.inc_count();

// або А::inc_count();

}

Статичні методи не можуть бути константними (const) і віртуальними (virtual).


 

А также другие работы, которые могут Вас заинтересовать

5997. Создать метод и измерительную систему, обеспечивающие НК температурных характеристик структурных переходов 578.5 KB
  Актуальность темы исследования. Полимерные материалы (ПМ) находят широкое применение, что обусловлено разнообразием их свойств, которые можно изменять при применении новых технологий. Информация о структурных переходах (фазовых, релаксационных) в ПМ...
5998. Исследование физических процессов, возникающих в структурах металл-диэлектрик-полупроводник 639.5 KB
  Актуальность работы. Разрушения изделий, аппаратов, конструкций, связанные с нарушением прочности материалов, приводят к серьезным последствиям, а в некоторых отраслях и технологических процессах они просто недопустимы. Следовательно, при эксплуатац...
5999. Планирование маркетинга строительства 153 KB
  На современном этапе социально-экономического развития все большую роль приобретает такая отрасль экономического знания, как экономика строительства. Это вполне закономерно, если учитывать то влияние, которое оказывает строительство на экон...
6000. Качество электроэнергии в системах электроснабжения объектов 244.5 KB
  Введение Приемники электроэнергии (ПЭ) и аппараты, присоединенные к электрическим сетям, предназначены для работы при определенных номинальных параметрах: номинальной частоте переменного тока, номинальном напряжении, номинальном токе и т. п. Долгое ...
6001. Маркетинг: основы теории 2.81 MB
  В пособии рассмотрены методологические аспекты реализации современных концепций маркетинга в процессе становления и развития рыночного хозяйства в России, определены роль и значение маркетинговых методов и инструментов в организации финансово-хозяйс...
6002. Учебно-методическое пособие по выполнению контрольных работ по дисциплине Экономика 198.5 KB
  В пособии излагаются основные требования, советы, рекомендации по выполнению контрольных работ по дисциплине Экономика для студентов не-экономических специальностей заочной формы обучения. В нем представлены варианты работ, литература, приложения...
6003. Расчет количества технических обслуживаний подвижного состава за год 88.85 KB
  Введение На современном этапе перехода к рыночным отношениям возникает потребность ускоренного развития производственной инфраструктуры, в том числе транспорта, обеспечивающей надежное обращение материальных ресурсов. Ежегодно в нашей стране образуе...
6004. Автоматизация учета приема оплаты с юридических лиц за коммунальные услуги 1.18 MB
  В настоящее время приемом оплаты за коммунальные услуги занимаются предприятия, аналогичные МУП ГЕРЦ г.Махачкалы. Все эти предприятия широко распространены. Сказать, что все предприятия имеют сходную структуру, полномочия и обязанности, з...
6005. Аграрное право Российской Федерации. Курс лекций 552.5 KB
  Тема № 1. Источники аграрного права Вопрос № 1. Понятия и виды источников аграрного права В современной теории права выражение источник права часто используется в двух значениях: материальном и формальном. В материальном значении под источником пр...