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

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

Войти
Регистрация
Восстановить пароль
 
redbaron_ms
Сообщений: n/a
#1

Статическое поле класса, имеющее тип того же класса - C++

28.10.2012, 01:36. Просмотров 534. Ответов 2
Метки нет (Все метки)

Всем доброго времени суток.
Как известно, поля класса могут быть ссылками, либо указателями на тот же класс, в котором объявляются, но не могут быть представлены как объекты этого же класса. Это логично.
В свою очередь статические поля - это глобальные переменные, доступные в пределах класса, которые существуют вне зависимости от созданных объектов класса.
Но вот натолкнулся на занимательную конструкцию...

C++
1
2
3
4
5
6
7
8
9
10
11
class Date{
 
int day, month, year;
 
static Date today;
 
public:
 
static int count;
 
};
Подскажите, пожалуйста, почему данный код корректен?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
28.10.2012, 01:36     Статическое поле класса, имеющее тип того же класса
Посмотрите здесь:

Статическое поле,количество экземпляров класса - C++
Помогите понять,статическое поле stcount считает количество созданных экземпляров класса (объектов),я объявляю всего два объекта а он...

Почему метод класса затирает статическое поле - C++
Добрый день :) Я учу самостоятельна с++. Сейчас разбираю тему классы. Вот у меня возник вопрос по коду: #include<iostream> using...

Как в методе класса вызвать другой метод того же класса? - C++
class mate { public: int AplusB(int A, int B) { return A+B; } int AplusBplusC(int A, int B, int C)

Мое константное статическое поле только что было использовано до того как оно создалось? - C++
В названии темы уже понятно, думаю, что у меня за проблема. Я экспериментировал со статическими полями классов (в частности с...

Конструктор с параметром-объектом того же класса - C++
Была поставлена задача: определить конструктор с параметром-объектом того же класса, но я совсем не понимаю, что от меня требуется?...

Тип производного класса - C++
Как можно узнать тип производного класса на этапе компиляции?#include <iostream> #include <type_traits> struct A {}; struct B : A...

Использование ПП с входным объектом в методе того же класса - C++
Такая ситуация: в классе page должна использоваться ПП void replace(page* a). Но как это сделать? Получается ведь, что они вместе должны...

Динамический тип данных класса - C++
Доброго времени суток. Появился такой вопрос. В java есть возможность динамический типов данных класса, которыми он управляет( class...

Изменить поле класса - C++
код большой и использует доп. библиотеки - постараюсь описать схематично(надеюсь будет понятно) есть класс А, есть класс B : А...

Поле класса const; ? - C++
Встретил следующий код в книге "С++. Стандартная библиотека. Николай Джосьютис" (привожу только интересующую его часть): class Person ...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Герц
524 / 341 / 4
Регистрация: 05.11.2010
Сообщений: 1,077
Записей в блоге: 1
28.10.2012, 01:42     Статическое поле класса, имеющее тип того же класса #2
Это стандарт. Так как статическое поле принадлежит классу, а не экземпляру, оно может иметь тип того же класса.
redbaron_ms
Сообщений: n/a
28.10.2012, 01:53     Статическое поле класса, имеющее тип того же класса #3
Понял, спасибо.

Цитата Сообщение от Герц Посмотреть сообщение
Так как статическое поле принадлежит классу, а не экземпляру
Гмм, видимо, именно поэтому оно и не учитывается при определении размера объекта.
Принадлежащее всем (при патронаже класса) - ничьё. Коммунизм в чистом виде
Yandex
Объявления
28.10.2012, 01:53     Статическое поле класса, имеющее тип того же класса
Ответ Создать тему
Опции темы

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