Exemplo 1
Vamos conferir esta primeira instância de uma variável estática em c++.
#incluirDentro da função "my_demo", criamos a variável estática "count_val" utilizando a palavra -chave estática e configurando -a com o valor zero. Depois disso, o count_val é incrementado para a próxima chamada de função. Em seguida, temos a principal função em que temos um loop para iteração e invocar a função "my_demo".
O resultado do script variável estática acima é o seguinte:
Exemplo 2
As variáveis estáticas em uma classe são acessíveis pelos objetos, pois recebem espaço atribuído em armazenamento estático separado, o que significa que as variáveis marcadas como estáticas são inicializadas apenas uma vez uma vez. As mesmas variáveis estáticas não podem ser usadas mais de uma vez para objetos diferentes. Além disso, devido a isso, os construtores não podem inicializar variáveis estáticas. Como resultado, o usuário precisa inicializar manualmente variáveis estáticas dentro das classes usando o nome da classe e o operador de resolução de escopo além da classe, conforme ilustrado abaixo:
#incluirEstabelecemos uma classe "MyClass", que é mantida pública. Em seguida, definimos uma variável estática "x". Então, criamos o construtor da classe "MyClass", que não faz nada por causa de seu corpo vazio. Fora da aula, inicializamos explicitamente a variável estática "x" com a resolução do escopo "::". Então, dentro do Int Main, declaramos o objeto "Obj" invocando a "myclass" e imprimindo seu valor.
O valor da variável estática X definida no script acima é exibida abaixo.
Exemplo 3
Como você pode ver no programa acima, fizemos um esforço para fazer várias duplicatas da variável estática para vários objetos. Mas isso não aconteceu.
#incluirEstabelecemos uma classe, "MyClass2" e declaramos um objeto como "a". Em seguida, definimos o construtor de "myclass2", que inicializa o objeto "a" com o valor zero. Além disso, ele coutá a declaração "corpo construtor". Além disso, construímos o destruidor da classe "MyClass2", que apenas imprime a declaração "Corpo Destutor". Depois disso, criamos a função principal do INT, que define e inicializa outro objeto como "B" definido como zero. Além disso, temos uma declaração IF que tem a condição de que o objeto "b" é igual ao valor zero e depois define o objeto do construtor myclass2 como "obj". No final, chamamos o comando cout, que imprimirá a mensagem do principal terminado.
O seguinte resultado é impresso no prompt.
Exemplo 4
O objeto é designado como não estático no programa IF de mencionado acima mencionado. Portanto, o escopo da variável é restrito ao bloco se. Como resultado, o construtor de funções é chamado quando um objeto é criado, e o destruidor é chamado assim que o controle do Block não estiver mais em vigor porque o escopo de um objeto é limitado ao bloco if, onde é declarado. Agora vamos examinar como a saída mudará se declararmos que o objeto é estático.
#incluir
Criamos a classe "myclas3", como no programa acima. Em seguida, definimos a variável x e atribuímos um valor de zero. O construtor e o destruidor também são estabelecidos dentro da classe "MyClass3". Dentro da declaração principal, se condicional, declaramos o objeto estático de "myclass3".
A mudança no desempenho é óbvia. Como o destruidor é chamado na tela de prompt subsequente após a principal, isso ocorreu como resultado da vida útil do programa ser coberta por objetos estáticos.
Exemplo 5
A existência de funções estáticas de membro em uma classe é independente de qualquer objeto de classe, assim como a de membros de dados estáticos ou variáveis estáticas. Em contraste com os membros não estáticos de dados e funções membros da classe, as funções estáticas são permitidas apenas o acesso a outras funções estáticas para membros ou outros membros de dados estáticos.
#incluirA classe “new_class” possui um modificador público que define a função estática do vazio como “display_msg”. Dentro dessa função estática de membro "Display_MSG", imprimimos a instrução Cout. Fora do “new_class”, temos o método principal do programa em que invocamos a função de membro estático “Display_MSG”.
A saída imprime a mensagem dentro da função de membro estático "Display_MSG" da seguinte forma:
Nossa compreensão da idéia estática em C ++ pode ser baseada no artigo mencionado acima. Na área de armazenamento estático, os itens estáticos são atribuídos apenas um armazenamento uma vez durante um programa. Além disso, eles são válidos para todo o período do programa. Este guia discute as várias técnicas de uso estático, juntamente com exemplos de trabalho. Usar os conceitos de acordo com as necessidades do programador será mais fácil com a ajuda dos exemplos.