O que eu gostaria do "terminal" como programador profissional. Outro fio com desejos para a MQL5. - página 6
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
cerca de um quarto dos algoritmos numéricos usam goto, que tal se um algoritmo for testado, aprovado, testado, mas não pode ser
para a MT sem goto?
Encher a funcionalidade em uma dll ou remover goto.
Ainda estou me perguntando de que algoritmos você está falando.
Eu me junto a Korey. Ninguém viu nenhum algoritmo de alto nível implementado com o goto? Toda essa histeria é apenas um tipo de religião, e não uma necessidade real. Um codificador competente pode escrever um código claro e preciso também com goto e pode ser mais legível do que um código equivalente com saltos condicionais.
P.S. Parece que o próprio Wirth, que criticou o goto, o deixou na sua cabeça de qualquer maneira. E em C++, "os idiomas mais estruturados", goto parece não ter desaparecido. Eu não aceito a objeção de compatibilidade retroativa com a C.
Na verdade, usar goto é um estilo de programação ruim e em 99% dos casos o código com ele pode ser substituído por um semelhante com declarações condicionais existentes.
Eu discordo.
Você pode reescrevê-lo. Mas você também pode dizer que a ausência de goto em uma língua é um estilo ruim e 99% do código pode ser reescrito com base em seu uso.
Eu, por exemplo, realmente perdi o goto para sair de estruturas complexas aninhadas se-else com laços. Se em algum lugar profundo da estrutura for calculada a necessidade de análise de saída, tenho que escrever uma análise adicional das bandeiras de saída para todos esses anexos que considero inconvenientes. Ele sobrecarrega o código. É muito mais fácil lembrar o estado da bandeira e ir para fora da análise.
Não tem que passar à marca. Já estava sendo discutido. Poderíamos passá-lo atrás de um bloco externo (chamado) (operador, laço - o que quer que tenha um corpo em aparelho encaracolado).
Bem, a SK. já escreveu exatamente o que eu queria pedir ao zelota do estilo correto (por exemplo, sair da profundidade de um ninho quíntuplo se-else).
Encher a funcionalidade em uma dll ou remover goto.
Ainda estou me perguntando de que algoritmos você está falando.
Trata-se da Fortran como a principal fonte de métodos numéricos.
Tudo nele é testado e aprovado pela associação americana de engenheiros.
e aqui não há problema - trabalhamos com DLL e pronto))))
e como se isso acontecesse - você quer inserir diretamente no código MQ, mas você tem que lavrar através do algoritmo, o que consome bastante tempo.
P.S. e o mais importante: perigoso.
Eu me junto a Korey. Ninguém viu nenhum algoritmo de alto nível implementado com o goto? Toda essa histeria é apenas um tipo de religião, e não uma necessidade real. Um codificador competente pode escrever um código claro e limpo também com goto e pode ser mais legível do que o código equivalente com saltos condicionais.
P.S. Parece que o próprio Wirth, que criticou o goto, o deixou na sua cabeça de qualquer maneira. E em C++, "os idiomas mais estruturados", goto parece não ter desaparecido. Objeções a
Não aceito nenhuma compatibilidade retroativa com a C.
Eu não vou discordar. É isso mesmo.
SK. escreveu (a) >>
Eu discordo.
É possível reescrevê-lo. Mas você também poderia dizer que a falta de goto no idioma é um mau estilo e 99% do código pode ser reescrito com base em seu uso.
Eu, por exemplo, realmente perdi o goto para sair de estruturas complexas aninhadas se-else com laços. Se em algum lugar profundo da estrutura for calculada a necessidade de análise de saída, tenho que escrever uma análise adicional das bandeiras de saída para todos esses anexos que considero inconvenientes. Ele sobrecarrega o código. É muito mais fácil lembrar o estado da bandeira e ir para fora da análise.
Não tem que passar à marca. Já estava sendo discutido. Poderíamos passar fora do bloco (nomeado) (operador, loop - o que quer que tenha um corpo dentro de um aparelho encaracolado).
A pausa não funcionaria?
Em resumo, cada um tem seu próprio estilo e compreensão, e isso é o fim da questão.
SK. Se você tiver algum problema com isso, por favor, entre em contato comigo, eu o ajudarei, sujeito à disponibilidade de tempo.
Isto é apenas para laços ou interruptores (a propósito, não é uma construção muito necessária, que pode ser substituída com a mesma elegância por uma cadeia de se...outra cadeia). Tudo é relativo.
A pausa não serviria?
De modo geral - cada um tem seu próprio estilo e compreensão, vamos encerrar o assunto neste ponto.
SK. Se você tiver algum problema com isso, eu o ajudarei, se eu tiver tempo.
O intervalo não serve. Tem um efeito limitado.
E você não deve ser mal-educado.
E você não deve ser mal-educado.
Eu não pensava assim.
Trata-se da Fortran como a principal fonte de métodos numéricos.
tudo nele é testado e aprovado pela associação americana de engenheiros.
e aqui não há problema - nós trabalhamos com DLL e pronto))))
e como se ele existisse - você quer inserir diretamente no código MQ, mas tem que lavrar através do algoritmo, o que consome bastante tempo.
P.S. E o mais importante, é perigoso.
Fortran, havia o goto. Mas não tem nada a ver com a eficiência dos métodos numéricos. No MatLab ele é implementado tanto (ainda mais) e não há como ir para lá. Goto tem uma história que remonta ao estilo de programação da linguagem assembly (mudar para etiqueta). A aparente simplicidade deste operador é enganosa. Suponha que haja cinco se anexos mais. E foi para onde você precisa e é isso, mas depois há variáveis locais e globais, pilha, ponteiros, arrays, etc. O que fazer com eles? Implementar a saída correta de anexos em assembler, levando em conta todos os erros imagináveis ((. É difícil descobrir como fazê-lo corretamente mesmo em linguagem de alto nível, enquanto que em assembler é uma verdadeira confusão.
Se eu fosse o desenvolvedor, tentaria fazer com que a MQL5 permitisse anexar programas escritos em MathCad(MatLab). Seria simples e fácil (e não a mão direita na orelha esquerda). Isso representa bilhões de horas-homem economizadas + um passo gigantesco na capacidade de processar dados. Para dar essa capacidade, e o principal esforço para melhorar o terminal