Static е ключова дума в C и C ++, която се използва за деклариране на специален тип променлива или функция вътре или извън клас. В тази публикация ще разберем накратко концепцията за статични променливи членове и статични функции на членове в c ++ и ще ги сравним с нормални променливи и функции в следния ред:
Статични променливи членове
Променливите, класифицирани като статични, също са част от C. да предположим, че във функция има 2 променливи, едната е нормална променлива, а другата е статична променлива. Нормалната променлива се създава при извикване на функцията и нейният обхват е ограничен. Докато статичната променлива се създава веднъж и се унищожава в края на програмата. Тези променливи имат живот през цялата програма.
#include using space names std void Test () {static int x = 1 x = ++ x int y = 1 y = ++ y cout<<'x = '<Изход:
От горния изход можем да заключим, че всеки път, когато функцията Test () беше извикана, беше създадено копие на променлива ‘y’, докато същото копие на променлива ‘x’ беше използвано всеки път, когато функцията Test () беше извикана.
Сега, нека обсъдим характеристиките на статичните променливи
структури от данни и алгоритми в java
Статичните променливи се инициализират до 0. Инициализира се само веднъж.
В цялата програма се създава само едно копие на статичната променлива член за целия клас, поради което променливите статични членове също се наричат променливи клас. Той се споделя от всички инстанции на класа.
Статичната променлива член се вижда само в класа, но нейният живот е до края на програмата.
Нека разгледаме пример за статични членски променливи в клас.
#include използвайки std клас на пространство от име Пример {static int x public: void function1 () {x ++} void function2 () {cout<<'x = '<Изход:
От горния изход можем да видим, че променливата ‘x’ се споделя за всички обекти. За да разберем подробно концепцията за статичните променливи данни, можем да измислим библиотека, в която има няколко книги, поставени на различни рафтове. Разглеждайте библиотеката като клас, позицията на определена книга ‘x’ като статична променлива на член, а учениците като обекти на класа. Когато първият ученикпристигнал, той поставя ‘x’ на нова позиция сега, когато друг студент пристигне ‘x’ няма да се върне в първоначалното си положение, но ще остане там, където го е оставил първият ученик.
Статични членски функции в C ++
Подобно на статичните променливи членове, ние имаме статични функции на членове, които се използват за определена цел. За да създадем статична функция член, трябва да използваме ключовата дума static, докато декларираме функцията. Тъй като статичните променливи членове са свойства на класа, а не свойства на обекта, за достъп до тях трябва да използваме името на класа вместо името на обекта.
ms sql уроци за начинаещиСвойства на статичните функции на членовете:
Статичната функция може да осъществява достъп само до други статични променливи или функции, присъстващи в същия клас
Статичните функции на членове се извикват с помощта на името на класа. Синтаксис-име_клас :: име_функция ()
Нека разгледаме класически пример, за да разберем подробно концепцията за статичните функции на членовете. В този пример ще разберем всички понятия, свързани със статичните функции на членовете.
#include използвайки std клас пространство за име Пример {static int Number int n public: void set_n () {n = ++ Number} void show_n () {cout<<'value of n = '< как да приложим абстрактния метод в JavaОт горния изход можем да видим, че стойността на променливата ‘n’ е различна както за обектите ‘example1’, така и ‘example2’ от класа ‘Example’. Тъй като променливата ‘Number’ е променлива на класа, нейната стойност е еднаква както за обектите ‘example1’ и ‘example2’. Статичните членски променливи и функции се използват, когато общите стойности трябва да се споделят във всички обекти. Докато програмирате, използването на статична ключова дума трябва да се прави разумно.
С това стигнахме до края на тази статия за статичната функция на членовете в c ++. Ако искате да научите повече, разгледайте от Edureka, доверена компания за онлайн обучение. Курсът за обучение и сертифициране на Java J2EE и SOA на Edureka е предназначен да ви обучи както за основните, така и за разширените Java концепции, заедно с различни Java рамки като Hibernate & Spring.
Имате въпрос към нас? Моля, споменете го в раздела за коментари на този блог и ние ще се свържем с вас възможно най-скоро.