Erros, bugs, perguntas - página 1889
![MQL5 - Linguagem para estratégias de negociação inseridas no terminal do cliente MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
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
Isto é um insecto ou falta-me alguma coisa? Uma EA parabólica normal coloca uma ordem de paragem no ponto anterior, no caso de compra com o spread tomado em consideração.
E agora o preço (Pergunte) atingiu o preço de encomenda 57781, mas a encomenda não está aberta.
Qual é o erro de tempo de execução
se o fizer:
ou seja, conversão para pai, depois tudo corre bem, aparentemente ocorreram mudanças muito significativas na estrutura da língua e agora o tipo derivado não é, sem ambiguidade, um tipo ancestral.
Verificado em C++:
A pré-conversão de um objecto de classe mãe para um objecto derivado é tratada correctamente, ou seja, há um erro no mecanismo MQL5 com conversão de tipo, a menos que não tenha sido concebido dessa forma.
Qual é o erro de execução
Se não verificar o que o dynamic_cast retorna, não vale a pena utilizá-lo.
se o fizer:
ou seja, conversão para pai, depois tudo corre bem, aparentemente ocorreu uma mudança muito significativa na estrutura da língua e agora o tipo derivado não é, sem ambiguidade, um tipo ancestral.
Se não verificar o que o dynamic_cast retorna, não vale a pena utilizá-lo.
Obrigado, no meu exemplo devolve NULL. Porque é que isto acontece?
Poderia dar um exemplo prático de como utilizar este truque?
Os programadores usam-no apenas em Graphic.mqh como se segue
Ao mesmo tempo, têm definições de classes/objectos como esta
Ou seja, eles passam um ponteiro dos pais a uma criança. Bem, é exactamente isso que eu faço no meu exemplo! Onde está o problema?
Um ponteiro para uma classe de pais pode realmente conter um ponteiro para um descendente.
Um ponteiro para uma classe de pais pode realmente conter um ponteiro para um descendente.
Obrigado, consegui-o!
Ainda não percebo porque é que no MQL não se pode lançar um ponteiro para um tipo de ponteiro de classe descendente, mas em C++ é possível, pode explicar se é um erro no MQL ou se deve ser assim?
é possível em C++, pode explicar se é um bug em MQL ou deveria ser?