Ilya Malev: Seria mais conveniente se o compilador se oferecesse para organizar automaticamente os parênteses "corretamente", como faz o Excel quando você escreve uma fórmula incompleta.
Em geral, existem linguagens de programação especiais para os amantes de parênteses - LISP. Aqui está um trecho de um mecanismo de busca: "Este estilo é um pouco como a linguagem LISP". Mas na LISP, o grande número de parênteses é causado pela falta de prioridade das operações".
Em geral, para os ventiladores de suportes existem linguagens de programação especiais - Simula, LISP. Aqui está um trecho de um mecanismo de busca: "Este estilo é um pouco como a linguagem LISP". Mas na LISP, o grande número de parênteses é causado pela falta de prioridade das operações".
É bom que o compilador avise sobre algo que os desenvolvedores mudam repentinamente na lógica do passado. Se os mesmos avisos fossem dados em chamadas de função como ArrayMaximum após a migração do código do mql4, eu teria economizado muito tempo e nervosismo em meu tempo (eles trocaram livremente parâmetros de um tipo, se você não estiver ciente disso).
Quanto aos "programadores normais lembram-se das prioridades das operações C++ como a tabela de multiplicação", eu pessoalmente só me lembrei mais ou menos dela depois que comecei a sobrecarregar os operadores, e antes disso nunca a abri de forma alguma. Nem todos os codificadores mql são profissionais, e os desenvolvedores do terminal e a linguagem para os comerciantes precisam levar isso em conta, não menos importante.
Se os mesmos avisos fossem emitidos em chamadas de função como ArrayMaximum após a transferência do código do mql4, eu teria economizado muito tempo e nervosismo em meu tempo (eles trocaram livremente os mesmos parâmetros, se você não estiver ciente)
Bem, elas não são dadas para fora. Isto é o que torna a codificação seletiva tão ruim - cria uma ilusão de que o compilador cuidará de qualquer coisa (portanto, ou é tudo ou nada).
Ilya Malev: Nem todos os codificadores mql são profissionais, e os desenvolvedores do terminal e a linguagem para os comerciantes precisam levar isso em conta, não menos importante.
Exatamente! Nunca um profissional, tais avisos já me ajudaram 100 vezes.
O aviso foi emitido somente porque as prioridades são diferentes na MQL5. Não porque ...
Assim, os Desenvolvedores corrigiram seus erros anteriores. não mais do que isso
Há algo de errado com as prioridadesaqui também?
Há algo de errado com as prioridadesaqui também?
Eles são diferentes na MQL5 e na antiga MQL4. Eu pensei que você já tinha lido que
Uma lista de diferenças, por favor.
Uma lista de diferenças, por favor.
Você não pode fazer você mesmo? Clique nos links acima?
MQL5 e nova MQL4
Operação
Descrição
Ordem de execução
&&
E operação lógica
Da esquerda para a direita
||
OU operação lógica
Da esquerda para a direita
Antiga MQL4
||
OU operação lógica
Da esquerda para a direita
&&
E operação lógica
Da esquerda para a direita
Quanto maior a prioridade de um grupo de operações, maior é a sua colocação na mesa.
Seu exemplo:
bool a = r && g || b;Seria mais conveniente se o compilador se oferecesse para organizar automaticamente os parênteses "corretamente", como faz o Excel quando você escreve uma fórmula incompleta.
Em geral, existem linguagens de programação especiais para os amantes de parênteses - LISP. Aqui está um trecho de um mecanismo de busca: "Este estilo é um pouco como a linguagem LISP". Mas na LISP, o grande número de parênteses é causado pela falta de prioridade das operações".
Em geral, para os ventiladores de suportes existem linguagens de programação especiais - Simula, LISP. Aqui está um trecho de um mecanismo de busca: "Este estilo é um pouco como a linguagem LISP". Mas na LISP, o grande número de parênteses é causado pela falta de prioridade das operações".
É bom que o compilador avise sobre algo que os desenvolvedores mudam repentinamente na lógica do passado. Se os mesmos avisos fossem dados em chamadas de função como ArrayMaximum após a migração do código do mql4, eu teria economizado muito tempo e nervosismo em meu tempo (eles trocaram livremente parâmetros de um tipo, se você não estiver ciente disso).
É bom para o compilador adverti-lo sobre algo que os desenvolvedores mudam repentinamente na lógica do passado.
Eu não me importo. Basta deixar esses avisos permanecerem no antigo MQL4.
Se os mesmos avisos fossem emitidos em chamadas de função como ArrayMaximum após a transferência do código do mql4, eu teria economizado muito tempo e nervosismo em meu tempo (eles trocaram livremente os mesmos parâmetros, se você não estiver ciente)
Bem, elas não são dadas para fora. Isto é o que torna a codificação seletiva tão ruim - cria uma ilusão de que o compilador cuidará de qualquer coisa (portanto, ou é tudo ou nada).
Nem todos os codificadores mql são profissionais, e os desenvolvedores do terminal e a linguagem para os comerciantes precisam levar isso em conta, não menos importante.
Exatamente! Nunca um profissional, tais avisos já me ajudaram 100 vezes.