Static é uma palavra-chave em C e C ++ que é usada para declarar um tipo especial de uma variável ou função dentro ou fora de uma classe. Nesta postagem, entenderemos brevemente o conceito de variáveis de membro estáticas e funções de membro estáticas em c ++ e as compararemos com variáveis e funções normais na seguinte ordem:
Variáveis de membro estático
Variáveis classificadas como estáticas também fazem parte de C. suponha que em uma função existam 2 variáveis, uma é uma variável normal e a outra é uma variável estática. A variável normal é criada quando a função é chamada e seu escopo é limitado. Enquanto a variável estática é criada uma vez e destruída no final do programa. Essas variáveis têm uma vida útil durante todo o programa.
#include using namespace std void Test () {static int x = 1 x = ++ x int y = 1 y = ++ y cout<<'x = '<Resultado:
java para exemplos de programa de loop
A partir da saída acima, podemos concluir que toda vez que a função Test () foi chamada, uma cópia da variável 'y' foi criada, enquanto a mesma cópia da variável 'x' foi usada sempre que a função Test () foi chamada.
Agora, vamos discutir as características das variáveis estáticas
Variáveis estáticas são inicializadas com 0. Ele é inicializado apenas uma vez.
Ao longo do programa, apenas uma cópia da variável de membro estático é criada para a classe inteira, portanto, as variáveis de membro estático também são chamadas de variáveis de classe. Ele é compartilhado por todas as instâncias da classe.
A variável de membro estático só é visível dentro da classe, mas seu tempo de vida é até o final do programa.
Vamos considerar um exemplo de variáveis de membro estático em uma classe.
#include using namespace std class Exemplo {static int x public: void function1 () {x ++} void function2 () {cout<<'x = '<Resultado:
A partir da saída acima, podemos ver que a variável 'x' é compartilhada por todos os objetos. Para entender o conceito das variáveis de dados estáticos em detalhes, podemos pensar em uma biblioteca onde existem vários livros colocados em diferentes estantes. Considere a biblioteca como uma classe, a posição de um determinado livro 'x' como uma variável membro estática e os alunos como os objetos da classe. Quando o primeiro alunochegado, ele coloca 'x' em uma nova posição agora quando outro aluno chega 'x' não retornará à sua posição original, mas permanecerá onde o primeiro aluno o deixou.
Funções de membro estático em C ++
Assim como as variáveis de membro estático, temos funções de membro estático que são usadas para um propósito específico. Para criar uma função de membro estático, precisamos usar a palavra-chave static ao declarar a função. Como as variáveis de membro estático são propriedades de classe e não propriedades de objeto, para acessá-las precisamos usar o nome da classe em vez do nome do objeto.
Propriedades de funções-membro estáticas:
converter string para array php
Uma função estática só pode acessar outras variáveis estáticas ou funções presentes na mesma classe
As funções de membro estáticas são chamadas usando o nome da classe. Sintaxe-class_name :: function_name ()
Vamos considerar um exemplo clássico para entender o conceito de funções de membro estático em detalhes. Neste exemplo, entenderemos todos os conceitos relacionados às funções de membro estáticas.
#include using namespace std class Exemplo {static int Number int n public: void set_n () {n = ++ Number} void show_n () {cout<<'value of n = '<A partir da saída acima, podemos ver que o valor da variável 'n' é diferente para ambos os objetos 'exemplo1' e 'exemplo2' da classe 'Exemplo'. Uma vez que a variável ‘Número’ é uma variável de classe, seu valor é o mesmo para os objetos ‘exemplo1’ e ‘exemplo2’. Variáveis e funções de membro estático são usadas quando valores comuns devem ser compartilhados entre todos os objetos. Durante a programação, o uso de palavras-chave estáticas deve ser feito com sabedoria.
Com isso, chegamos ao final deste artigo sobre a função de membro estática em c ++. Se você deseja saber mais, confira o pela Edureka, uma empresa de aprendizagem online confiável. O curso de certificação e treinamento em Java J2EE e SOA da Edureka foi projetado para treiná-lo tanto para conceitos básicos quanto avançados de Java, juntamente com várias estruturas Java como Hibernate e Spring.
Tem alguma questão para nós? Mencione isso na seção de comentários deste blog e entraremos em contato com você o mais breve possível.