Método estático C ++

Método estático C ++
Um método em C ++ também é conhecido como 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. 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.

Projetamos este artigo para ensinar 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, você primeiro precisa passar por todos os exemplos fornecidos abaixo para ter uma boa idéia 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 no C ++; Os métodos estáticos de uma classe podem ser acessados ​​diretamente com o nome da classe ao usar o operador de resolução de escopo. Para isso, escrevemos um script C ++ mostrado na imagem a seguir:

Neste script C ++, definimos uma classe chamada "número". Dentro do corpo desta classe, temos apenas uma função pública. Nós declaramos essa função como "estática". O nome desta função é “Printnum”, E é preciso o número“ n ”como seu único parâmetro. Dentro desta função, simplesmente queremos imprimir o valor desse número passado no terminal. Como você pode ver, não definimos nenhum construtor para esta aula. Isso significa que não pretendemos criar seu objeto. Em vez disso, vamos acessar as funções desta classe diretamente.

Agora, dentro do nosso “principal()”Função, acessamos o“Printnum”Função da classe“ Número ”com a ajuda do nome da classe e do operador de resolução de escopo. Ao chamar essa função, passamos a ela um número aleatório, eu.e., 25. Nosso "principal()”A função termina com a declaração“ Return 0 ”, pois declaramos que ela tem um tipo de retorno inteiro.

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

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 no 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 ++, definimos primeiro uma classe chamada "número". Dentro do corpo desta classe, temos um membro privado "X" que é do tipo de dados inteiro e o tornamos estático. Então, temos apenas uma função pública. Nós declaramos essa função como “estático”. O nome desta função é “Printnum”, E é preciso o número“ n ”como seu único parâmetro. Dentro dessa função, queremos imprimir o valor desse 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 "estática" novamente. Agora, dentro do nosso “principal()”Função, acessamos o“Printnum”Função da classe“ Número ”com a ajuda do nome da classe e do operador de resolução de escopo. Enquanto chamamos essa função, passamos por um número aleatório, eu.e., 25. Nosso "principal()”A função termina com a declaração“ Return 0 ”, pois declaramos que ela tem um tipo de retorno inteiro.

Quando compilamos e executamos esse script C ++, nosso número, bem como o valor da variável "X", foi impresso corretamente no terminal, como mostrado na 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 é, de fato, a outra maneira 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. No entanto, a única diferença é que desta vez, não declaramos a variável "x" como estática.

Quando compilamos e executamos esse script C ++, uma mensagem de erro foi gerada no terminal, como mostrado na imagem abaixo, afirmando 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 consecutivos de rolo usando os métodos estáticos em c++

Neste exemplo, só queríamos dar uma visão geral de como os métodos estáticos funcionam no C ++, encerrando nossos exemplos. Vamos apenas criar 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". Nesta classe, temos um membro estático privado "rollnum" do tipo de dados 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 ()”Funciona também para retornar o“ rollnum ”incrementado toda vez que estiver sendo chamado.

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

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

Conclusão

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