O que é função de membro estático em C ++?



Este artigo fornecerá um conhecimento detalhado e abrangente da função de membro estático em C ++ com exemplos.

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

static-member-variables-1



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

  1. Variáveis ​​estáticas são inicializadas com 0. Ele é inicializado apenas uma vez.



  2. 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.

  3. 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
  1. Uma função estática só pode acessar outras variáveis ​​estáticas ou funções presentes na mesma classe

  2. 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.