Características da linguagem mql5, subtilezas e técnicas - página 216
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
ZS: Também já vi macros como
Não percebo.
Não percebo.
há muita informação online sobre a conveniência de uma tal macro, google "macro while 0".
https://russianblogs.com/article/9410298326/
Houve um exemplo de enquanto(0) neste fio há muito tempo
https://www.mql5.com/ru/forum/170952/page141#comment_12897922
Para que fique claro, é apenas para estática (tudo isto é sobre C++). Para variáveis locais, se houver um utilizador c-tor, não há nulling.
Gostei da explicação em si, que não contradiz de forma alguma o OOP.
Quando se cria um objecto de estrutura simples, acontece o seguinte:
Quando a declaração passa por {}, outra é inserida entre os itens 1-2 - preenchendo a memória atribuída com zeros.
Com esta lógica, o OOP não sofre de forma alguma. É um mecanismo válido.
Quando uma declaração é feita com {}, outra é inserida entre as cláusulas 1-2 - preencher a memória atribuída com zeros.
Com esta lógica, o OOP não sofre de forma alguma. Mecanismo válido.
A lógica sofre aqui: porque é que precisamos de a zerar se de qualquer forma haverá um construtor?
A própria lógica sofre aqui: porquê zerar se depois haverá um construtor de qualquer forma?
Porque uma estrutura com um construtor não pode ser utilizada num sindicato.
Para a união apenas inicializar o primeiro membro, trocar os campos e o teste será executado.
Pensemos se vale a pena mudar o comportamento para se tornar o que a maioria dos utilizadores espera que seja.
Considere que eu mudei - agora verifico o 1º termo para x[i].i == 0 (antes a condição era x[i].x == 0.0)
Resultado: falso
E com ZeroMemory - verdadeiro
há muita informação online sobre a conveniência de uma tal macro, google "macro while 0".
https://russianblogs.com/article/9410298326/
Toda esta confusão é apenas para colocar um ponto-e-vírgula no fim de uma macro. Utilizo parênteses encaracolados em macros em todo o lado e não tenho problemas.
Considere que eu mudei - agora verifico o 1º termo para x[i].i == 0 (anteriormente a condição era x[i].x == 0.0)
Resultado: falso
E com ZeroMemory - verdade.
Sim. bug mql
(e em C++ retorna verdadeiro).