Статический - это ключевое слово в C и C ++, которое используется для объявления специального типа переменной или функции внутри или вне класса. В этом посте мы вкратце разберемся с концепцией статических переменных-членов и статических функций-членов в C ++ и сравним их с обычными переменными и функциями в следующем порядке:
Статические переменные-члены
Переменные, классифицированные как статические, также являются частью C. Предположим, что в функции есть 2 переменные, одна - обычная переменная, а другая - статическая переменная. Обычная переменная создается при вызове функции и ее область действия ограничена. Пока статическая переменная создается один раз и уничтожается в конце программы. У этих переменных есть время жизни на протяжении всей программы.
#include с использованием пространства имен std void Test () {static int x = 1 x = ++ x int y = 1 y = ++ y cout<<'x = '<Вывод:
Из вышеприведенного вывода мы можем сделать вывод, что каждый раз, когда вызывалась функция Test (), создавалась копия переменной «y», в то время как одна и та же копия переменной «x» использовалась каждый раз при вызове функции Test ().
как сделать массив объектов в javaТеперь давайте обсудим характеристики статических переменных.
Статические переменные инициализируются значением 0. Инициализируется только один раз.
На протяжении всей программы создается только одна копия статической переменной-члена для всего класса, поэтому статические переменные-члены также называются переменными класса. Он используется всеми экземплярами класса.
Статическая переменная-член видна только внутри класса, но ее время жизни - до завершения программы.
Давайте рассмотрим пример статических переменных-членов в классе.
#include с использованием пространства имен std class Пример {static int x public: void function1 () {x ++} void function2 () {cout<<'x = '<Вывод:
Из вышеприведенного вывода мы видим, что переменная «x» является общей для всех объектов. Чтобы подробно понять концепцию статических переменных данных, можно представить себе библиотеку, в которой несколько книг размещены на разных полках. Рассматривайте библиотеку как класс, положение определенной книги «x» как статическую переменную-член и студентов как объекты класса. Когда первый студентприбыл, он ставит «х» в новую позицию; теперь, когда приходит другой ученик, «х» не вернется в исходное положение, но останется там, где его оставил первый ученик.
как использовать goto c ++Статические функции-члены в C ++
Как и статические переменные-члены, у нас есть статические функции-члены, которые используются для определенной цели. Чтобы создать статическую функцию-член, нам нужно использовать ключевое слово static при объявлении функции. Поскольку статические переменные-члены являются свойствами класса, а не свойствами объекта, для доступа к ним нам нужно использовать имя класса вместо имени объекта.
Свойства статических функций-членов:
Статическая функция может обращаться только к другим статическим переменным или функциям, присутствующим в том же классе.
Статические функции-члены вызываются с использованием имени класса. Синтаксис-имя_класса :: имя_функции ()
Давайте рассмотрим классический пример, чтобы подробно понять концепцию статических функций-членов. В этом примере мы поймем все концепции, связанные со статическими функциями-членами.
#include с использованием пространства имен std class Пример {static int Number int n public: void set_n () {n = ++ Number} void show_n () {cout<<'value of n = '<Из вышеприведенного вывода мы видим, что значение переменной «n» отличается для объектов «example1» и «example2» класса «Example». Поскольку переменная «Число» является переменной класса, ее значение одинаково для объектов «example1» и «example2». Статические переменные-члены и функции используются, когда общие значения должны использоваться всеми объектами. При программировании следует использовать ключевое слово static с умом.
На этом мы подошли к концу статьи о статических функциях-членах в C ++. Если вы хотите узнать больше, ознакомьтесь с от Edureka, надежной компании онлайн-обучения. Курс обучения и сертификации по Java J2EE и SOA от Edureka разработан, чтобы обучить вас базовым и продвинутым концепциям Java, а также различным средам Java, таким как Hibernate и Spring.
Есть вопрос к нам? Пожалуйста, укажите это в разделе комментариев этого блога, и мы свяжемся с вами как можно скорее.