Variável global dentro de uma classe

 

Bom dia, pessoal!

Alguém sabe se consigo declarar uma variável como global dentro de uma classe?

Por exemplo, na classe onde lido com horários, utilizo em diversas funções a hora atual. Teria uma forma de armazenar em uma variável comum a todas as funções da classe?

 
thomasnascimento: Alguém sabe se consigo declarar uma variável como global dentro de uma classe? Por exemplo, na classe onde lido com horários, utilizo em diversas funções a hora atual. Teria uma forma de armazenar em uma variável comum a todas as funções da classe?
Possivelmente está referindo-se a uma variável estática ... Documentação sobre MQL5: Elementos Básicos da Linguagem / Programação Orientada a Objetos / Membros Estáticos de uma Classe
Documentação sobre MQL5: Elementos Básicos da Linguagem / Programação Orientada a Objetos / Membros Estáticos de uma Classe
Documentação sobre MQL5: Elementos Básicos da Linguagem / Programação Orientada a Objetos / Membros Estáticos de uma Classe
  • www.mql5.com
Membros Estáticos de uma Classe - Programação Orientada a Objetos - Elementos Básicos da Linguagem - Referência MQL5 - Referência sobre algorítimo/automatização de negociação na linguagem para MetaTrader 5
 

Boa tarde, Fernando! Obrigado pela resposta, mas não é uma variável estática, pois quero que a hora atual seja atualizada toda vez que o método da classe seja executado.

Testando de acordo com a orientação da documentação enviada, o valor é constante.

 
thomasnascimento #: .. mas não é uma variável estática, pois quero que a hora atual seja atualizada toda vez que o método da classe seja executado. Testando de acordo com a orientação da documentação enviada, o valor é constante.

Leia atentamente a documentação. Uma variável membro "estática" não é "constante".

A variável mantém-se "estática" (tipo "global") independentemente dos objectos instanciados. Nada tem haver com a ideia com o valor da variável ser constante.

Uma variável membro estática é comum, ou partilhada entre todos os objectos instanciados a partir dessa classe.

 
Fernando Carreiro #:

Leia atentamente a documentação. Uma variável membro "estática" não é "constante".

A variável mantém-se "estática" (tipo "global") independentemente dos objectos instanciados. Nada tem haver com a ideia com o valor da variável ser constante.

Uma variável membro estática é comum, ou partilhada entre todos os objectos instanciados a partir dessa classe.

Entendi, Fernando! Obrigado pelo esclarecimento.


Mas ainda sim estou com dificuldades de entender em qual parte da classe adiciono a linha "variável = TimeCurrent();".

Conseguiria me ajudar, por favor?

 
thomasnascimento #: Entendi, Fernando! Obrigado pelo esclarecimento. Mas ainda sim estou com dificuldades de entender em qual parte da classe adiciono a linha "variável = TimeCurrent();". Conseguiria me ajudar, por favor?

Pense da seguinte maneira — se a variável fosse declarada como global fora da classe, quando é que iria atualizar o valor dessa variável global?

 
Fernando Carreiro #:
Pense da seguinte maneira — se a variável fosse declarada como global fora da classe, quando é que iria atualizar o valor dessa variável global?
Acredito que criando um método que fosse utilizado no OnTick essa variável seria atualizada para toda classe
 
thomasnascimento #:

Entendi, Fernando! Obrigado pelo esclarecimento.


Mas ainda sim estou com dificuldades de entender em qual parte da classe adiciono a linha "variável = TimeCurrent();".

Conseguiria me ajudar, por favor?

Acho que voce precisa ler um pouco sobre a variavel e metodo estatico para entender melhor o conceito.