Статический метод С++

Staticeskij Metod S



Метод в C++ также известен как функция, и использование методов в C++ продвигает концепцию модульного программирования и возможности повторного использования кода. Это означает, что методы, которые когда-то были написаны, могут вызываться столько раз, сколько необходимо, без необходимости писать их каждый раз. Эти методы обладают следующими тремя основными свойствами:
  • Статические методы могут быть получены непосредственно с помощью имени класса и оператора разрешения области без создания какого-либо объекта.
  • Статические методы класса могут обращаться только к статическим членам этого класса.
  • Статические методы не могут получить доступ к нестатическим членам класса.

Мы разработали эту статью, чтобы научить вас использовать статические методы C++ в Ubuntu 20.04.

Использование статического метода в C++ в Ubuntu 20.04

Чтобы использовать статические методы в C++ в Ubuntu 20.04, вам сначала нужно просмотреть все приведенные ниже примеры, чтобы получить представление о том, как эти функции работают в C++.







Пример № 1: Изучение первого свойства статических методов в C++

В этом примере мы хотим исследовать первое свойство статических методов в C++; к статическим методам класса можно получить доступ непосредственно с помощью имени класса при использовании оператора разрешения области видимости. Для этого мы написали скрипт C++, показанный на следующем рисунке:



  Статический метод С++



В этом сценарии C++ мы определили класс с именем «Число». Внутри тела этого класса у нас есть только одна публичная функция. Мы объявили эту функцию «статической». Название этой функции « PrintNum ', и принимает число 'n' в качестве единственного параметра. В этой функции мы просто хотим распечатать значение этого переданного числа на терминале. Как видите, мы не определили никакого конструктора для этого класса. Это означает, что мы не собираемся создавать его объект. Вместо этого мы собираемся напрямую обращаться к функциям этого класса.





Теперь в рамках нашего « главный() », мы получили доступ к « PrintNum » функции класса «Число» с помощью имени класса и оператора разрешения области. При вызове этой функции мы передали ей случайное число, т. е. 25. Наш « главный() » завершается оператором «return 0», так как мы объявили, что он имеет целочисленный возвращаемый тип.

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



  Статический метод в С++

Пример № 2: Изучение второго свойства статических методов в C++

В этом примере мы хотим исследовать второе свойство статических методов в C++; статические методы класса могут обращаться только к статическим членам этого класса. Для этого мы написали скрипт C++, показанный на следующем рисунке:

В этом сценарии C++ мы сначала определили класс с именем «Число». Внутри тела этого класса у нас есть частный член «x» с целочисленным типом данных, и мы сделали его статическим. Тогда у нас есть только одна публичная функция. Мы объявили эту функцию как « статический ». Название этой функции « PrintNum ', и принимает число 'n' в качестве единственного параметра. Внутри этой функции мы хотим распечатать значение этого переданного числа на терминале и значение статического члена «x».

После этого мы инициализировали статический член «x» значением «10» с помощью имени класса вне нашего класса без повторного использования ключевого слова «static». Теперь в рамках нашего « главный() », мы получили доступ к « PrintNum » функции класса «Число» с помощью имени класса и оператора разрешения области. При вызове этой функции мы передали ей случайное число, т. е. 25. Наш « главный() » завершается оператором «return 0», так как мы объявили, что он имеет целочисленный возвращаемый тип.

Когда мы скомпилировали и выполнили этот скрипт C++, наш номер, а также значение переменной «x» были правильно напечатаны на терминале, как показано на изображении ниже. Это означает, что выполнено второе свойство статических методов в C++ — статические методы могут обращаться только к статическим членам класса в C++.

Пример № 3: Изучение третьего свойства статических методов в C++

В этом примере мы хотим исследовать третье свойство статических методов в C++, которое фактически представляет собой другой способ определения второго свойства; статические методы не могут получить доступ к нестатическим членам класса. Для этого мы написали скрипт C++, показанный на следующем рисунке:

Этот сценарий C++ выглядит точно так же, как сценарий, показанный во втором примере. Однако единственная разница в том, что на этот раз мы не объявили переменную «x» статической.

Когда мы скомпилировали и выполнили этот сценарий C++, на терминале было сгенерировано сообщение об ошибке, как показано на изображении ниже, в котором говорилось, что что-то вроде значения «x» не может быть доступно статическим методом в C++. Это означает, что выполнено третье свойство статических методов в C++ — статические методы не могут получить доступ ни к каким нестатическим членам класса в C++.

Пример № 4: Генерация последовательных номеров рулонов с использованием статических методов в C++

В этом примере мы просто хотели дать общее представление о том, как статические методы работают в C++, завершив наши примеры. Мы просто создадим программу для генерации некоторых номеров рулонов в пределах предоставленного диапазона. Для этого мы написали скрипт C++, показанный на следующем рисунке:

В этом сценарии C++ у нас есть класс с именем «RollNumber». В этом классе у нас есть частный статический член «RollNum» целочисленного типа данных. Затем у нас есть общедоступный статический метод « получитьRollNum() ” с целочисленным типом возвращаемого значения. Вне определения этого класса мы инициализировали нашу переменную «RollNum» значением «1» и определили « получитьRollNum() », чтобы каждый раз при вызове возвращать увеличенный «RollNum».

Затем в рамках нашего « главный() », у нас есть цикл «for», который перебирает переменную счетчика от «0» до «9», что соответствует 10 итерациям. Внутри этого цикла мы хотим напечатать значение, возвращаемое « получитьRollNum() ” для каждой итерации. Опять же, « главный() » завершается оператором «return 0».

Когда мы скомпилировали и выполнили этот сценарий C++, на терминале была сгенерирована серия из 10 различных номеров рулонов, как показано на следующем рисунке:

Вывод

Нашей целью в этой статье было научить вас использовать статические методы C++ в Ubuntu 20.04. Мы рассказали об основных свойствах этих методов, а затем привели четыре примера, с помощью которых вы сразу же узнаете, как эти методы работают в C++. Поняв эти примеры, вы сможете легко овладеть статическими методами C++. Мы надеемся, что эта статья оказалась для вас полезной, и ознакомьтесь с Linux Hint для получения более информативных статей.