Perguntas de Iniciantes MQL5 MT5 MetaTrader 5 - página 496

 
Alexey Kozitsyn:

Funcionará da forma como escrevi acima.

O compilador adverte o utilizador a não ser preguiçoso e a colocar parênteses para evitar possíveis erros não óbvios.

É por isso que não esmago o meu chip de memória com estas prioridades - coloco parênteses e tenho a certeza de que funcionará como pretendia.
 
Alexey Viktorov:
É por isso que não esmago o meu chip de memória com estas prioridades, coloco parênteses e tenho a certeza de que funcionará como eu quero.
Concordo plenamente consigo nisto, eu faço o mesmo. Mas já que fez a pergunta...
 
pako:
Por isso, experimente.

Então não preciso - porque é que preciso de 365 dias?


Alexey Viktorov:

Bem essencialmente, sim, o aviso não é um erro. Mas como funcionará a variante inicial se( Low[X]>PriceBuy && High[X]>PriceBuy ||| Low[X]<PriceBuy && High[X]<PriceBuy )? Ou não pode colocar um par de parênteses?

Não vai quebrar, só não pensei que fosse necessário - ou pode alterar a lógica de prioridades do compilador e será necessário para que o código continue a funcionar correctamente?


Artyom Trishkin:

De que serve aqui o compilador, porque o valor ainda pode ser negativo?

Na verdade, o compilador grita ao "i" bem amado por muitas pessoas ;)

 
-Aleks-:

Então não preciso - porque é que preciso de 365 dias?


As mãos não serão quebradas, só não pensei que fosse necessário - ou talvez a lógica de prioridade do compilador mude e seja necessário que o código continue a funcionar correctamente?


De que serve o compilador aqui, porque o valor ainda pode ser negativo?

De facto, o compilador grita tanto ao "i" amado por muitas pessoas ;)

SeBaixo[X] está sempre abaixo deAlto[X], só tem de escrever

se (Low[X]>PriceBuy ||| High[X]<PriceBuy), isso funcionaria mais rapidamente!

 
Boris:

SeBaixo[X] é sempre inferior aAlto[X], é suficiente escrever

se (Low[X]>PriceBuy ||| High[X]<PriceBuy), isso funcionaria mais depressa!

Concordo - pode ser mais curto, só não penso na optimização quando o escrevo - adiei para mais tarde... Obrigado.
 
-Aleks-:

Então não preciso - porque é que preciso de 365 dias?


As mãos não serão quebradas, só não pensei que fosse necessário - ou talvez a lógica de prioridade do compilador mude e seja necessário que o código continue a funcionar correctamente?


De que serve o compilador aqui, porque o valor ainda pode ser negativo?

Na verdade, o compilador grita ao "i", que é o favorito de muitas pessoas ;)

Se for inferior a zero, não haverá laço. Está a fazer tudo irreflectidamente?
 
-Aleks-:

Então não preciso - porque é que preciso de 365 dias?

De facto, o compilador no "i" preferido de muitas pessoas grita da mesma maneira ;)

Escreva-o bem, não haverá gritos.
 
Artyom Trishkin:
Se for inferior a zero, não há laço. Está a fazer tudo sem sentido?

Em que é que a minha opção difere da sua num caso destes?

Não podia fazer tudo sem pensar, mas às vezes gostava de poder...


pako:
Escreva-o correctamente, não haverá gritos.

Qual é a coisa certa a fazer? Estou apenas a aprender o básico - é por isso que estou aqui a fazer perguntas, porque devo dizer "fazer bem" se não sei como deve ser correcto? ;)

Então como evitar avisos de erro se os loops normalmente inicializam a variável "i"?

 
-Aleks-:

Em que é que a minha opção difere da sua num caso destes?

Não podia fazer tudo sem pensar, mas às vezes gostava de poder...


Qual é a coisa certa a fazer? Estou apenas a aprender o básico - é por isso que estou aqui a fazer perguntas, porque devo dizer "fazer bem" se não sei como deve ser correcto? ;)

Então, como evitar o aviso de erro quando os loops normalmente inicializam a variável "i"?

Leia a ajuda da visibilidade variável.
 
-Aleks-:

Qual é a coisa certa a fazer? Estou apenas a aprender o básico - é por isso que estou aqui a fazer perguntas, porque devo dizer "fazer bem" se não sei como deve ser feito? ;)

Então, como evitar mensagens de erro se os loops normalmente inicializam a variável "i"?

aqui está escrito em brancohttps://docs.mql4.com/ru/basis/operators/for

Оператор цикла for - Документация на MQL4
  • docs.mql4.com
Оператор цикла for - Документация на MQL4