Erros, bugs, perguntas - página 1123

 
Fleder:

A funçãoGetLastError é para erros de tempo de execução.

Interessado em erros de compilação.

Não é possível obter o número do erro de compilação no MetaEditore, mas se houver um erro de compilação, há uma descrição do erro no separador "Erros". Se não compreender a descrição, então copie a mensagem e traduza-a em tradutor :).
 

Encontrei uma descrição dos erros. Mas onde posso ver os números de erro?

Não os consigo ver em lado nenhum no MetaEditor...

 
barabashkakvn:
Não é possível obter o número do erro de compilação no MetaEditore, mas quando ocorre um erro de compilação, existe uma descrição do erro no separador "Erros". Se não compreender a descrição, então copie a mensagem e traduza-a em tradutor :).
Estou a fazê-lo, mas é de alguma forma "torto". Tentarei candidatar-me ao Service Desk para adicionar tal coluna na janela "Ferramentas" no separador "Erros" no editor.
 
Fleder:
Eu sei, mas é um pouco "tortuoso". Tentarei aplicar ao servicedesk para adicionar tal coluna na janela "Ferramentas" no separador "Erros" do editor.
Erros de compilação é um nome muito sonoro. São mais susceptíveis de serem relatórios de supervisão. A propósito, a descrição sobre o erro é muito clara. Pessoalmente, penso que o número do erro só leva tempo - copie o número do erro, depois vá para ajudar, depois encontre o número...
 
Fleder:
Não vale a pena fazer um loop infinito. Para fazer um número limitado de tentativas e depoisdevolverINIT_FAILED em funçãoOnInit() int .
Faz sentido, mas eu não gostaria que o indicador caísse por causa de tal disparate. Ok, vou escrevê-lo em código.
 

Acha que seria mais rápido traduzir o texto inglês sobre um erro ou aviso num tradutor de google em bruto, e depois procurar correspondências na ajuda, onde estas descrições estão em russo?

E nem todos podem "intuitivamente" compreender uma mensagem sobre um descuido "em burguês".

 
Fleder:

Acha que seria mais rápido traduzir o texto inglês sobre um erro ou aviso num tradutor de google em bruto, e depois procurar correspondências na ajuda, onde estas descrições estão em russo?

E nem todos podem "intuitivamente" compreender uma mensagem sobre um descuido "em burguês".

Dar código (o código é inserido com o botão "SRC") e mensagem de erro. O inglês é a língua oficial em que os programas são escritos em todo o mundo.
 
Fleder:

Acha que seria mais rápido traduzir o texto inglês sobre um erro ou aviso num tradutor de google em bruto, e depois procurar correspondências na ajuda, onde estas descrições estão em russo?

E nem todos podem "intuitivamente" compreender a mensagem de erro "em burguês".

Aqui está um exemplo simples de como, tendo comentado apenas um símbolo, pode obter três erros de uma só vez.

//+------------------------------------------------------------------+
//|                                                  test_script.mq5 |
//|                              Copyright © 2014, Vladimir Karputov |
//|                                           http://wmua.ru/slesar/ |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2014, Vladimir Karputov"
#property link      "http://wmua.ru/slesar/"
#property version   "1.00"
//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+
void OnStart()
  //{
//---
   Print(__FUNCTION__);
  }
//+------------------------------------------------------------------+

Recebe três erros ao mesmo tempo:

'test_script.mq5'       test_script.mq5 1       1
'Print' - semicolon expected    test_script.mq5 15      4
'Print' - declaration without type      test_script.mq5 15      4
'}' - expressions are not allowed on a global scope     test_script.mq5 16      3
3 error(s), 0 warning(s)                4       1                        

E se houvesse números de erro, acha que seria mais fácil encontrar a fonte do erro?

 
barabashkakvn:
Dar o código (o código é inserido usando o botão "SRC") e a mensagem de erro. O inglês é a língua oficial em que os programas são escritos em todo o mundo.

Pessoalmente, não tenho dificuldade em encontrar erros grosseiros no código que o compilador "pragueja". Presumo que nenhum dos dois o faz. Mas e os recém-chegados?

De facto, se a documentação tratar de erros de compilação por números, seria razoável fornecer

a oportunidade de conhecer os números destes mesmos erros no editor quando os comete ao acaso.

 
//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+
void OnStart()
  {
//---
   float num;
   num=13.7;         //так получаем предупреждение truncation of constant value sample.mq5      9       8
   num=(float)13.7;  //а так всё в порядке
  }
//+------------------------------------------------------------------+

O compilador trata o número 13.7 como o tipo duplo. Mas ao mesmo tempo, este número pode ser convertido sem perdas para o tipo de flutuador

e este aviso é desnecessário.