Errori, bug, domande - pagina 1794

 
Комбинатор:
Perché?

Ci sono perizomi (due pezzi).

Gli sviluppatori potrebbero ancora fare una soluzione simile funzionante per MqlTradeResult se

struct MqlTradeResult
  {
   uint     retcode;          // Код результата операции
   ulong    deal;             // Тикет сделки, если она совершена
   ulong    order;            // Тикет ордера, если он выставлен
   double   volume;           // Объем сделки, подтверждённый брокером
   double   price;            // Цена в сделке, подтверждённая брокером
   double   bid;              // Текущая рыночная цена предложения (цены реквота)
   double   ask;              // Текущая рыночная цена спроса (цены реквота)
   string   comment;          // Комментарий брокера к операции (по умолчанию заполняется расшифровкой кода возврата торгового сервера)
   uint     request_id;       // Идентификатор запроса, устанавливается терминалом при отправке  
   uint     retcode_external; // Код ответа внешней торговой системы
  };

la stringa di campo verrebbe fatta per ultima. Ma per MqlTradeRequest anche questo non aiuterebbe.

 
fxsaber:

Ci sono perizomi (due pezzi).

Sì, non ci avevo pensato.
 

fxsaber:

Risultato

STRUCT::~STRUCT
STRUCT::~STRUCT
STRUCT::~STRUCT
Perché tre volte e non due?
Quasi sempre una chiamata sarà inutile ... ecco i dettagli https://www.mql5.com/ru/forum/1111/page1657#comment_2729876
Ошибки, баги, вопросы
Ошибки, баги, вопросы
  • www.mql5.com
Форум алго-трейдеров MQL5
 
A100:
Quasi sempre una chiamata sarà inutile ... ecco i dettagli https://www.mql5.com/ru/forum/1111/page1657#comment_2729876
Quindi non è un bug, ma un risultato della chiave del compilatore C++ che gli sviluppatori stanno usando?
 
безfxsaber:
Cioè non è un bug, ma il risultato di una chiave del compilatore C++ che gli sviluppatori usano?

Questo è un comportamento standard, che nella stragrande maggioranza dei casi può essere ottimizzato senza danni e non è ancora ottimizzato

int i = 1 + 2; //стандартное поведение: вычислять i при выполнении
               //оптимизация: сразу присвоить 3
 
1530 - che cos'è?
 
A100:

Questo è un comportamento standard, che nella stragrande maggioranza dei casi può essere ottimizzato senza danni e non è ancora ottimizzato

int i = 1 + 2; //стандартное поведение: вычислять i при выполнении
               //оптимизация: сразу присвоить 3
L'ottimizzazione è buona, grazie. Ma se tutto viene eseguito onestamente, da dove vengono i tre passi?
 
fxsaber:
L'ottimizzazione è buona, grazie. Ma se tutto viene eseguito onestamente, da dove vengono i tre passi?

Notifica a ServiceDesk

struct S {
        S()  { Print( __FUNCTION__ ); }
        ~S() { Print( __FUNCTION__ ); }
};
S f()
{
        S s;
        return s;
}
void OnStart() //2 раза  
{
        f();
}

quindi 2 volte chiamare (cosa è cambiato? - c'è un costruttore),

Ho supposto che il compilatore nel tuo esempio completi il codice in questo modo

void OnStart() //3 раза 
{
        S s = f(); //s при этом - не используется

}

 
A100:

Segnala al ServiceDesk

Ha scritto.

quindi 2 volte la chiamata(cosa è cambiato? - c'è un costruttore),

Misterioso MQL...
 

È necessario scrivere a SR se uno dei server ottiene uno zero Result.deal ogni volta che unaposizione vieneaperta con successo da un ordine a mercato?

Non sono sicuro che questo sia un errore, perché probabilmente è come è impostato il server stesso. Inoltre, puoi sempre ottenere Result.deal da Result.order in ogni caso.