Erros, bugs, perguntas - página 2297
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
Obrigado, mas não vi aí nenhuma resposta às minhas perguntas.
Não compreendo porque é que o destruidor não é chamado quandoA *a= novo A;
https://www.mql5.com/ru/docs/basis/variables/object_live
Todos os objectos criados pela expressão pointer_object=novo nome_da_classe devem ser destruídos posteriormente pelo operador delete(pointer_object). Se, por alguma razão, esta variável não tiver sido destruídapelo operador de eliminação, a mensagem sobre ela aparecerá na revista "Experts". É possível declarar várias variáveis e atribuí-las todas ao mesmo ponteiro de objectos.
Peço à MQL para verificar a função OnTimer().
Por alguma razão não funciona no teste de estratégia para MT4 (não há erros, apenas nada dentro desta função é executado), enquanto que online está OK.
Para MT5, a função funciona tanto no testador como online.
Obrigado!
No OnInit apenas dois números são comparados, e é preciso mais tempo para um passe incorrecto do que para um passe completo! Como assim?
Vamos gerir este Expert Advisor na optimização total
Obtemos o resultado do trabalho de 8 agentes
Eis agora o nosso Conselheiro Especialista
Finalmente, como este
Duas saídas
Quanto ao segundo ponto, há claramente algum tipo de erro. É mais benéfico em termos de tempo realizar uma corrida vazia, em vez de saltar do OnInit. Por favor, corrijam-no porque as vantagens de Incorrect-Init e ExpertRemove serão quase completamente perdidas.
O separador de favoritos com EAs/indicadores/scripts e contas só é lembrado após a saída do terminal. Devido a isto, uma saída anormal (power out) reinicia este separador. É possível salvá-lo ao mudá-lo?
Por vezes há um claro entendimento de que seria muito útil se as pastas pudessem ser adicionadas aos favoritos.
Então tente assim:
Resultado:
1:POINTER_AUTOMÁTICO
1:POINTER_DYNAMIC
2:POINTER_DYNAMIC
2:POINTER_AUTOMÁTICO
Obrigado! Uma solução e tanto.
Mas é provavelmente melhor que o compilador não pragueje:
Isto é um insecto ou o quê?
Quando se cria uma instância de uma classe via nova , ela não chama o destruidor.
É a única solução para criar uma classe especial para chamar o destruidor? Ou podemos passar sem ele?
Criar com novo e apagar com apagar
A questão é colocar a eliminação num destruidor, mas ao criar uma instância de uma classe através de novo (A *a=novoA ;) o destruidor não é chamado.
É possível, e se sim, como, derivar em qualquer indicador ZigZag os valores correspondentes dos extremos de preços Alto e Baixo,
assegurando a sua ligação estável e proximidade às partes superiores e inferiores formadas?
Ver exemplo deOBJ_TEXT
https://www.mql5.com/ru/docs/basis/variables/object_live
Obrigado.
É exactamente isso que diz aqui.
Portanto, não é um insecto, é uma característica que resulta num círculo vicioso.
Se eu quiser automatizar o processo de apagar um objecto dinâmico, o destruidor é chamado apenas ao apagar, por isso é inútil colocar o apagar no próprio destruidor.
Mas a automatização pode ser implementada através de outra instância de outra classe, como @A100aqui sugerido.
Obrigado pela dica. Já estou exausto de ler e tentar e tentar e ler. Gostaria de ver um exemplo de trabalho do ZigZag...
Como no meu avatar com ziguezague, mas com uma ligação DIREITA dos extremos superiores, porque a ligação dos extremos inferiores é OK!
A forma de encadernação com k=(WindowPriceMax()-WindowPriceMin())/30 não funciona quando o tamanho da janela muda muito, eu desejo outra coisa...
No exemploOBJ_TEXT, tanto a ligação superior como a inferior. Siga a hiperligação, dê o exemplo ...
Portanto, não é um insecto, mas uma característica, resultando num círculo vicioso.
Já lhe foi dito anteriormente que a forma de resolver o controlo dos recursos não controláveis atribuídos é utilizar apontadores inteligentes. A analogia completa com C++.
Talvez o problema seja que a solução não tenha sido apresentada numa bandeja de prata, desculpe.
Todos podem digitar "shared_ptr" na pesquisa do site e seguir o primeiro resultado, não é difícil, recomendo vivamente que o experimentem.