Método Estático C++

Metodo Estatico C



Um método em C++ também é conhecido como uma função, e o uso de métodos em C++ promove o conceito de programação modular e reutilização de código. Isso significa que os métodos que são escritos uma vez podem ser chamados repetidamente quantas vezes forem necessárias sem a necessidade de escrevê-los todas as vezes. Esses métodos têm as três propriedades básicas a seguir:
  • Os métodos estáticos podem ser recuperados diretamente com o nome da classe e o operador de resolução de escopo sem criar nenhum objeto.
  • Os métodos estáticos de uma classe só podem acessar os membros estáticos dessa classe.
  • Os métodos estáticos não podem acessar os membros não estáticos de uma classe.

Criamos este artigo para ensinar a você o uso dos métodos estáticos em C++ no Ubuntu 20.04.

Usando o método estático em C++ no Ubuntu 20.04

Para usar os métodos estáticos em C++ no Ubuntu 20.04, primeiro você precisa passar por todos os exemplos fornecidos abaixo para ter uma boa ideia de como essas funções funcionam em C++.







Exemplo # 1: Explorando a primeira propriedade dos métodos estáticos em C++

Neste exemplo, desejamos explorar a primeira propriedade dos métodos estáticos em C++; os métodos estáticos de uma classe podem ser acessados ​​diretamente com o nome da classe usando o operador de resolução de escopo. Para isso, escrevemos um script C++ mostrado na imagem a seguir:



  Método Estático C++



Neste script C++, definimos uma classe chamada “Number”. Dentro do corpo desta classe, temos apenas uma função pública. Declaramos esta função como “estática”. O nome desta função é “ Número de impressão ”, e leva o número “n” como único parâmetro. Dentro desta função, queremos simplesmente imprimir o valor deste número passado no terminal. Como você pode ver, não definimos nenhum construtor para esta classe. Isso significa que não pretendemos criar seu objeto. Em vez disso, vamos acessar as funções dessa classe diretamente.





Agora, dentro do nosso “ a Principal() ” função, acessamos a função “ Número de impressão ” da classe “Number” com a ajuda do nome da classe e do operador de resolução de escopo. Ao chamar esta função, passamos a ela um número aleatório, ou seja, 25. Nosso “ a Principal() ” termina com a instrução “return 0” desde que declaramos que ela tem um tipo de retorno inteiro.

Quando compilamos e executamos este script C++, nosso número foi impresso corretamente no terminal, conforme a imagem abaixo. Isso significa que a primeira propriedade dos métodos estáticos em C++ foi satisfeita — os métodos estáticos podem ser acessados ​​diretamente com o nome da classe sem criar nenhum objeto e funcionam exatamente como pretendido.



  Método estático em c++

Exemplo # 2: Explorando a segunda propriedade dos métodos estáticos em C++

Neste exemplo, queremos explorar a segunda propriedade dos métodos estáticos em C++; os métodos estáticos de uma classe só podem acessar os membros estáticos dessa classe. Para isso, escrevemos um script C++ mostrado na imagem a seguir:

Neste script C++, primeiro definimos uma classe chamada “Number”. Dentro do corpo desta classe, temos um membro privado “x” que é do tipo de dado inteiro, e o tornamos estático. Então, temos apenas uma função pública. Nós declaramos esta função como “ estático ”. O nome desta função é “ Número de impressão ”, e leva o número “n” como único parâmetro. Dentro desta função, queremos imprimir o valor deste número passado no terminal e o valor do membro estático “x”.

Depois disso, inicializamos o membro estático “x” com um valor “10” com a ajuda do nome da classe fora de nossa classe sem usar a palavra-chave “static” novamente. Agora, dentro do nosso “ a Principal() ” função, acessamos a função “ Número de impressão ” da classe “Number” com a ajuda do nome da classe e do operador de resolução de escopo. Ao chamar esta função, passamos a ela um número aleatório, ou seja, 25. Nosso “ a Principal() ” termina com a instrução “return 0” desde que declaramos que ela tem um tipo de retorno inteiro.

Quando compilamos e executamos este script C++, nosso número, assim como o valor da variável “x”, foi impresso corretamente no terminal, conforme a imagem abaixo. Isso significa que a segunda propriedade dos métodos estáticos em C++ foi satisfeita — os métodos estáticos só podem acessar os membros estáticos de uma classe em C++.

Exemplo # 3: Explorando a terceira propriedade dos métodos estáticos em C++

Neste exemplo, desejamos explorar a terceira propriedade dos métodos estáticos em C++, que é, na verdade, a outra forma de declarar a segunda propriedade; os métodos estáticos não podem acessar os membros não estáticos de uma classe. Para isso, escrevemos um script C++ mostrado na imagem a seguir:

Este script C++ se parece exatamente com o script mostrado no segundo exemplo. Porém, a única diferença é que desta vez não declaramos a variável “x” como estática.

Quando compilamos e executamos este script C++, uma mensagem de erro foi gerada no terminal conforme mostrado na imagem abaixo, informando algo como o valor de “x” não pode ser acessado por um método estático em C++. Isso significa que a terceira propriedade dos métodos estáticos em C++ foi satisfeita — os métodos estáticos não podem acessar nenhum membro não estático de uma classe em C++.

Exemplo # 4: Gerando Números Rolantes Consecutivos Usando os Métodos Estáticos em C++

Neste exemplo, queremos apenas dar uma visão geral de como os métodos estáticos funcionam em C++, encerrando nossos exemplos. Estaremos apenas criando um programa para gerar alguns números de rolo dentro do intervalo fornecido. Para isso, escrevemos um script C++ mostrado na imagem a seguir:

Neste script C++, temos uma classe chamada “RollNumber”. Dentro desta classe, temos um membro estático privado “RollNum” do tipo de dado inteiro. Então, temos um método estático público “ getRollNum() ” com o tipo de retorno inteiro. Fora da definição desta classe, inicializamos nossa variável “RollNum” com um valor “1” e definimos nosso “ getRollNum() ” também para retornar o “RollNum” incrementado toda vez que está sendo chamado.

Então, dentro do nosso “ a Principal() ” , temos um loop “for” que itera através de uma variável de contador de “0” a “9”, que é para 10 iterações. Dentro deste loop, queremos imprimir o valor retornado pelo “ getRollNum() ” para cada iteração. Novamente, o “ a Principal() ” A função termina com a instrução “return 0”.

Quando compilamos e executamos este script C++, uma série de 10 números de roll diferentes foi gerada no terminal conforme mostrado na imagem a seguir:

Conclusão

Nosso objetivo para este artigo foi ensinar a você o uso dos métodos estáticos em C++ no Ubuntu 20.04. Compartilhamos as propriedades básicas desses métodos, seguidas dos quatro exemplos por meio dos quais você pode aprender instantaneamente como esses métodos funcionam em C++. Depois de entender esses exemplos, você pode facilmente adquirir um bom domínio sobre os métodos estáticos em C++. Esperamos que você tenha achado este artigo útil e confira o Linux Hint para obter mais artigos informativos.