Автор (^ ^,) задал вопрос в разделе Другие языки и технологии
Статичная функция внутри класса. какие данные будут доступны всем образцам класса? и получил лучший ответ
Ответ от Ra[гуру]
Полагаю, речь идет о С++?
> если мы создаем статичную ПЕРЕМЕННУЮ внутри класса
то она доступна (едина) всем образцам (протатипам) класса
и изменение в одном обрзаце этой переменной - затронит и все остальные.
Какая-то странная терминология. Обычно говорят "класс", "поля", "данные класса", "методы" или "функции-члены", "экземпляры класса" или просто "объекты класса".
Да, если объявить поле статическим, то оно будет общим для всех экземпляров класса и в памяти будет единственным.
> а что касается статичной функции внутри класса, как такое обявление затронит работу нескольких образцов?
Ну если поведение объектов меняется при изменении статичных полей, то как-то затронет. Из статичного метода нет доступа к полям класса, если они не статичные. Причем статичные метод можно вызвать даже не имея ни одного созданного экземпляра класса:
MyClass::my_static_method();
> переменные (не статичные) внутри статичной функции будут ли едины для всех образцов класса
Нет. С чего бы это вдруг им быть едиными?
ra
Высший разум
(108175)
> Пожалуйста посоветуйте литературу из разряда
> "Каждый программист C++ обязан прочитать от начала до конца"
Начинающим изучать программирование с С++ обычно рекомендую Бьярне Страуструп "Программирование: принципы и практика использования C++", но она действительно для начинающих. Еще у меня есть "Язык программирования С++" того же автора, в него заглядываю, как в справочник или если что-то подзабыл.
Вообще на языке не стоит зацикливаться, а стоит расширять кругозор. Почитать Вирта, Дейктру, Кнута, Седжвика (книги из серии "Фундаментальные алгоритмы на ...", ознакомится с функциональным и декларативным программированием. Полезно иметь представление о паттернах проектирования (Банда четырех, Фаулер). Ознакомится с каким-нибудь динамическим языком (python, ruby, javascript).
Странный вопрос. Вообще такие вещи могут зависеть от языка программирования, но на тех, которые знаю я:
1. Статическая переменная хранится в единственном экземпляре, то есть изменение этой переменной в одном объекте приведет к изменению в другом. (По факту все объекты содержат просто ссылку на одну переменную) .
2. А что будет со статической функцией? Просто ее можно будет использовать не создавая экземпляр класса. например в Java функция main - static.
Ты не сможешь из внешнего объекта обратиться к переменной функции. Как правило переменная объявленная внутри блока кода (в нашем случае функции) уничтожается по выходу из функции.
Статическое поле будет общим для двух экземпляров.
У меня установлен "lagarith lossless codec (1.3.27)" Что это и для чего нужен? Удалить можно?
Lagarith — открытый кодек, созданный для кодирования видеоданных без потерь информации. Разработан
подробнее...
Каким образом, используя право, гос-во выполняет охранительную и регулятивную функцию.
Право выполняет
специально-юридические функции, к ним
относятся регулятивная и
подробнее...
Статические поля и методы в С++. Подскажите что это и примеры если можно. Гугл затерялся в своих знаниях)
Статические переменные не входят в состав объекта. Они существуют в единственном экземпляре,
подробнее...
Сам вопрос звучит так: Свойства информации, классификация информ. , типы информ. . Общее и особенное между ними.
Предмет-то какой?
Вот, например, типы информации на сайтах :
Типы информации
В
подробнее...
Решите головоломку!
•ml, mr – количество миссионеров на левом и правом берегу соответственно;
•cl, cr – количество
подробнее...
что такое умеренное выпрямление поясничного лордоза???
РЕНТГЕНОДИАГНОСТИКА
РЕНТГЕНОДИАГНОСТИКА ДЕГЕНЕРАТИВНО-ДИСТРОФИЧЕСКИХ ПОРАЖЕНИЙ ПОЗВОНОЧНИКА
подробнее...
Что за ключевые слова extern и static в С++?
Вообще-то они еще в Си были.
extern - переменная где-то объявлена, но не в этой единице
подробнее...
Что такое "климактерический горбик" и что с ним делать?
Достаточно часто женщины обращаются к врачу с просьбой убрать надоевший и неэстетичный «горбик» на
подробнее...
что такое скринсейвер?
Скринсейвер (также хранитель экрана, заставка) — компьютерная программа, которая через некоторое
подробнее...
Что такое нарушение статической функции позвоночника??
Это ---(правильное название) сколиоз!
Сколиозом принято называть боковое искривление
подробнее...
9. Дайте определение понятию "опасные производственные факторы" и приведите приме-ры этих факторов?
Опасный производственный фактор - фактор среды и трудового процесса,
который может быть
подробнее...
ПОДАГРА. Что это? От чего?
Подагра - это заболевание, вызывающее в типичных случаях болезненное опухание суставов.
подробнее...
Господа, подскажите функцию в экселе
=ЕСЛИ (A1;ТДАТА ())
А1-ссылка на ячейку куда производится запись, формула вставляется в ячейку
подробнее...
Так ли важна в фотоаппарате функция автоматической очистки матрицы? Трудно ли очистить матрицу вручную?
Функция в фотоаппарате всего лишь может убрать пылинки, которые присосались из за статического
подробнее...