Erros, bugs, perguntas - página 1516

 
zaskok3:

Pare de fingir que não entende nada: o fundo pode ser arrastado para longe da pen drive. Há muitas outras formas. O principal é arrastá-lo para fora. Nem sequer tem de o fazer no próprio computador de outra pessoa.

Transferiu as suas palavras-passe, activou a gravação da palavra-passe no computador de outra pessoa e chamou-lhe um buraco. Tem estado a esconder o facto de ter permitido salvar a palavra-passe até ao último momento.

A conclusão é lógica - uma dúzia dos seus clones já foram libertados para reincidência.

 
Renat Fatkhullin:
Existem planos para fazer alterações à funcionalidade do MetaEditor para destacar variáveis, no depurador para criar automaticamente todas as variáveis utilizadas? Como em Qt Creator IDE ou VS.
 
coderex:
Existem planos para fazer alterações à funcionalidade do MetaEditor para destacar variáveis, no depurador para criar automaticamente todas as variáveis utilizadas? Como em Qt Creator IDE ou VS.
Sim, definitivamente.
 
Renat Fatkhullin:
Sim, vou.
Pergunto-me em quanto tempo...
 
Slawa:
Por favor verifique a aplicação #1416121 sobre a inicialização de variáveis globais/estáticas!
 
Alexey Kozitsyn:
Por favor verifique o pedido #1416121 sobre inicialização de variáveis globais/estáticas!

Na fila de espera. O pedido tem apenas duas horas.

Geralmente, tais perguntas devem ser feitas num fórum. Porque pode afectar muitas pessoas. Tomarei a liberdade de o citar e depois responder.

Olá. Corrija-me se estiver errado. As variáveis estáticas e globais são inicializadas uma vez antes de iniciar o programa (ou seja, a função OnInit()). Consequentemente, se o programa for deinicializado (a função OnDeinit() é chamada), o programa deve "esquecer" os valores das variáveis globais/estáticas e antes da próxima execução OnInit() inicializá-los com valores iniciais.

Encontrei um facto interessante no mql4 Expert Advisors. Se declarar variáveis globais/estáticas, por exemplo, ao alterar os parâmetros de entrada, isto é, após OnDeinit(), estes valores das variáveis não são reiniciados. Mas nos indicadores - eles são. O que fazer? Isto parece ser um erro.

Verifiquei em mql5 (construção 1241 x64) - semelhante. Em Expert Advisors - não reinicialização, em indicadores - reinicialização.

Este é um comportamento planeado. Além disso, está claramente descrito na documentação

Carregamento e descarregamento de indicadores

Os indicadores são carregados nos seguintes casos:

-ligação deum indicador a um gráfico;

-arranquedo terminal (se um indicador foi anexado a um gráfico antes do encerramento anterior do terminal)

- carregamentode um modelo (se o modelo contiver um indicador anexado ao gráfico)

- mudaro perfil (se um indicador for anexado a um dos gráficos de perfil);

-Mudaro símbolo e/ou período do gráfico, ao qual o indicador está anexado;

-após arecompilação bem sucedida de um indicador, se este indicador tiver sido anexado a um gráfico

- alteração dos parâmetros de entrada dos indicadores.

Os indicadores são descarregados nos seguintes casos:

-aodestacar um indicador de um gráfico;

-fechamentodo terminal (se um indicador for anexado a um gráfico);

-cargade um modelo, se um indicador for anexado a um gráfico

Fecharo gráfico ao qual foi anexado um indicador; - Fechar o terminal (se um indicador tiver sido anexado ao gráfico)

-Mudarum perfil, se um indicador for anexado a um dos gráficos do perfil a ser alterado;

-Mudaro símbolo e/ou período do gráfico, ao qual o indicador está anexado;

- alteraros parâmetros de entrada do indicador.

Descarregar e carregar envolve a completa reinicialização de tudo.

Em Cinco, como observou correctamente, a situação é semelhante.

É verdade, foi historicamente assim que na MQL4 mudámos primeiro este comportamento (para o tornar como nos peritos, ou seja, o comportamento que se espera). Mas muitas questões surgiram com os antigos indicadores, que se baseavam nesta inicialização. Fomos forçados a regressar

Nos cinco, este foi o caso imediatamente devido à arquitectura. Quando se alteram os parâmetros, o indicador antigo com os parâmetros antigos é destruído e é criado um novo indicador com parâmetros alterados.

Input переменные
Input переменные
  • docs.mql4.com
Input переменные
 
Slawa:
Na fila de espera. O pedido tem apenas duas horas.

Dupliquei-o aqui só por precaução.

Este é um comportamento planeado. Além disso,está claramente descrito na documentação.

Acabei de olhar aqui e aqui. E penso que é lógico, já que estou a trabalhar com uma classe de memória estática. E, mais uma vez, faz sentido que se houver uma "captura" sob a forma de técnicas estabelecidas em relação a diferentes tipos de programas, seria bom descrevê-la também na documentação para a classe de memória estática (variáveis estáticas e globais).

Por favor, acrescente às observações.

 
Alexey Kozitsyn:

Dupliquei-o aqui, só por precaução.

É que eu olhei aqui e aqui. E penso que é lógico, já que estou a trabalhar com uma classe de memória estática. E, mais uma vez, faz sentido que se houver uma "captura" sob a forma de técnicas estabelecidas em relação a diferentes tipos de programas, seria bom descrevê-la também na documentação para a classe de memória estática (variáveis estáticas e globais).

Por favor, acrescente às observações.

Que observações? Sobre a carga/descarga do programa?
 
Slawa:
Que comentário? Sobre o carregamento/descarregamento de programas?
Sobre o facto de a inicialização de variáveis estáticas e globais ser causada por diferentes eventos em indicadores e Expert Advisors. Acrescentar, em conformidade, no parágrafo sobre as variáveis globais e estáticas, na subsecção "observações".
 

Ajuda MT5:

IsStopped
 
Проверяет принудительное завершение работы mql5-программы.
 
bool  IsStopped();
 
Возвращаемое значение
 
Возвращает true, если в системной переменной _StopFlag содержится значение, отличное от 0. Ненулевое значение записывается в переменную _StopFlag, если поступила команда завершить выполнение mql5-программы. 
В этом случае необходимо как можно быстрее завершить работу программы, в противном случае программа будет завершена принудительно извне через 3 секунды.

Apenas verificado - o indicador é retirado do gráfico mas continua a funcionar durante 3 segundos, 10 segundos, 3 minutos...(IsStopped não foi aí verificado, esta não é a questão)

1) Porque é que diz "rescisão forçada durante 3 segundos" mas não funciona na realidade?

2) Porque é que os processos (guiões, indicadores, Expert Advisors, agentes de teste) não terminam à força quando são removidos de um gráfico, um utilizador pára um teste, etc.?