Erros, bugs, perguntas - página 2987

 
Vladimir Karputov:

O ponto de ruptura é deslocado - como em CSeries::BufferResize o perito nunca entra de todo no código.


Pensei que se for colocado um ponto de quebra em código que não é acedido, o depurador simplesmente não faz o ponto de quebra.

Isto é, a condição de ponto de parada não está preenchida.
Vladimir, está-me a escapar alguma coisa e há alguma coisa na documentação sobre o turno de breakpoint?

 
inwinterborn:


Pensei que se for colocado um ponto de paragem num código que não é endereçado, o depurador simplesmente não faz a paragem.

Isto é, a condição de ponto de parada não está preenchida.
Vladimir, está-me a faltar alguma coisa e há alguma coisa na Documentação sobre mudança de ponto de parada?

Não, este conhecimento não provém da Documentação.

 
Andrey Dik:

E então? É isso mesmo, os preços podem ser qualquer coisa, então quais são os correctos?

Os que entraram.

Não faz estes e outros estúpidos cheques, mas fazigualmente estúpidos mas muito mais caros cheques 0,0?

É difícil encontrar algo mais barato do que verificar se é zero. A lógica do robô não deve simplesmente avariar.

 
Vladimir Karputov:

Não, este conhecimento não provém da Documentação.

Obrigado pela sua resposta!
 
Vladimir Karputov:

O ponto de ruptura é deslocado - como em CSeries::BufferResize o examinador nunca entra de todo.

E desculpe, mas será isto realmente correcto?)
 
inwinterborn:
E peço desculpa, mas será realmente correcto?)

Penso que isto é correcto, porque o código não utilizado é simplesmente recortado do ficheiro compilado. E assim o ponto de quebra é deslocado para o código mais próximo que resta.

 
Vladimir Karputov:

Penso que isto é correcto, porque o código não utilizado é simplesmente recortado do ficheiro compilado. E assim o ponto de quebra é deslocado para o código mais próximo que resta.

Estou a ver o que significa agora. Obrigado pelo esclarecimento.
 

Eu dirijo um guião como este:

void OnStart()
  {
//---
   ResetLastError();
   Print(EnumToString(SYMBOL_CALC_MODE_EXCH_FUTURES_FORTS));   
   Print(GetLastError());                                      
  }

Resultado:

2021.03.18 13:01:48.706 TestBugEnumToString (Eu-6.21,H1)        SYMBOL_CALC_MODE_EXCH_OPTIONS
2021.03.18 13:01:48.706 TestBugEnumToString (Eu-6.21,H1)        0

Terminal:

2021.03.18 12:52:45.697 Terminal Opening Broker x64 build 2815 iniciado para JSC ''Opening Broker''
2021.03.18 12:52:45.697 Terminal Windows 7 Service Pack 1 build 7601, Intel Core i5-2520M @ 2.50GHz, memória 3 / 7 Gb, disco 29 / 287 Gb, IE 11, UAC, GMT+3

O que é que estou a fazer mal?

 
mktr8591:

Eu dirijo um guião como este:

Resultado:

Terminal:

2021.03.18 12:52:45.697 Terminal Opening Broker x64 build 2815 iniciado para JSC ''Opening Broker''
2021.03.18 12:52:45.697 Terminal Windows 7 Service Pack 1 build 7601, Intel Core i5-2520M @ 2.50GHz, memória 3 / 7 Gb, disco 29 / 287 Gb, IE 11, UAC, GMT+3

O que é que estou a fazer mal?

Obrigado pelo correio.

Este é um nome obsoleto para o mesmo valor de enumeração, corrigido.

 
Ilyas:

Obrigado pela mensagem.

Este é um nome obsoleto para o mesmo valor de enumeração, corrigido.

Obrigado, isso é reconfortante!