Você está perdendo oportunidades de negociação:
- Aplicativos de negociação gratuitos
- 8 000+ sinais para cópia
- Notícias econômicas para análise dos mercados financeiros
Registro
Login
Você concorda com a política do site e com os termos de uso
Se você não tem uma conta, por favor registre-se
Você encontrou uma maneira de criá-lo.
Você está tentando usar um campo estático deuma classe na fase de inicialização antes que pelo menos 1 instância dessa classe tenha sido criada. Na minha opinião, isto é uma perversão... É assim que funciona normalmente:
O princípio do encapsulamento geralmente implica que tais campos devem ser escondidos, e não públicos.Um campo estático é um campo estático por essa razão, portanto não depende de ter instâncias da classe. Mas se você quiser criar uma instância da classe primeiro - ok, crie-a, mas somente dentro da função. E solicite este campo dele (diretamente ou através de um método) - o resultado é o mesmo novamente.
Você está confuso com alguma coisa.
Não, eu não estou confuso com nada.
Primeiro as variáveis de nível global, depois as variáveis estáticas e depois as variáveis locais, como aparecem no código.
Este exemplo particular viola a recomendação da documentação de nãoinicializar variáveis com funções. Foi mais fácil para os desenvolvedores escrever tal aviso do que explicar onde eles devem e não devem.
Remova a estática de sua amostra e obtenha o resultado desejado.
Não, eu não estou confuso com nada.
Primeiro as variáveis de nível global, depois as variáveis estáticas e depois as variáveis locais, como aparecem no código.
Este exemplo particular viola a recomendação da documentação de nãoinicializar variáveis com funções. Foi mais fácil para os desenvolvedores escrever tal aviso do que explicar onde eles devem e não devem.
Remova a estática de seu exemplo e obtenha o resultado desejado.
Se é uma constante (e a visibilidade global declara em sua maioria constantes, se o código é inteligente), não há outra escolha.
Com relação a tudo em amarelo, tenho uma pergunta: Por quê? Eu já descobri como resolver o problema.AQUI, para não fazer bagunça do que você já fez.
"Recomendação de documentação". )) Estou surpreso com você. Você realmente ainda não entendeu o ponto? Há um bug no idioma. Os próprios desenvolvedores estão falando sobre isso, e explicam como fazer o pandeiro corretamente para não se deparar com este bug. Eu fiz questão de esquecer de uma vez por todas este bug.
Não se pode iniciar o valor de algo com uma função. Mesmo se você realmente quiser. Você não entendeu?
Um campo estático é um campo estático, portanto não depende de instâncias da classe. Mas se você quiser criar uma instância da classe primeiro, OK, crie-a, mas somente dentro da função. E solicite este campo a partir dele (diretamente ou via método) - o resultado será o mesmo novamente.
Então, é uma programação processual ou orientada a objetos? Por que devemos executar funções não relacionadas a classes no estágio anterior à inicialização com referência a objetos datilografados além disso. Entendo que a resposta é "porque me apetece". Mas se eu fosse o desenvolvedor, não teria pressa em cancelar tudo e correr para corrigir este comportamento particular, pois é uma arquitetura bastante marginal e, além disso, o problema é facilmente resolvido com a criação de uma instância da classe. Não dentro da função, é claro.
PARA SEMPRE, para não fazer uma bagunça da bagunça que você já fez.
Não se pode iniciar o valor de algo com uma função. Mesmo se você realmente quiser. Você não entendeu?
Então, é uma programação processual ou orientada a objetos? Por que, de repente, executar funções não relacionadas a classes antes da inicialização em relação a objetos datilografados. Entendo que a resposta é "porque me apetece". Mas se eu fosse o desenvolvedor, não teria pressa em cancelar tudo e correr para corrigir este comportamento particular, pois é uma arquitetura bastante marginal e, além disso, o problema é facilmente resolvido com a criação de uma instância da classe. Não dentro de uma função, é claro.
Então você é um defensor do uso em massa de variáveis globais, como eu o entendo. Então é improvável que você e eu nos entendamos um ao outro.
Além disso, a função em si pode ser um modelo. E a instância criada, respectivamente, deve ser parametrizada pelo mesmo tipo:
O que você faz?