Errori, bug, domande - pagina 1210

 
ALXIMIKS:

Il costruttore di copie e l'operatore di assegnazione sono previsti in futuro?


Il costruttore di copie è menzionato nell'aiuto a https://www.mql5.com/ru/docs/basis/types/classes

Un costruttore di default ha uno scopo specifico nell'inizializzare un array di oggetti della sua classe. Un costruttore i cui parametri hanno tutti valori predefiniti non è un costruttore di default. Mostriamo questo con un esempio:

//+------------------------------------------------------------------+
//| Класс с конструктором по умолчанию                               |
//+------------------------------------------------------------------+
class CFoo
  {
   datetime          m_call_time;     // время последнего обращения к объекту
public:
   //--- конструктор с параметром, имеющем значение по умолчанию, не является конструктором по умолчанию
                     CFoo(const datetime t=0){m_call_time=t;};
   //--- конструктор копирования 
                     CFoo(const CFoo &foo){m_call_time=foo.m_call_time;};
 
   string ToString(){return(TimeToString(m_call_time,TIME_DATE|TIME_SECONDS));};
  };

Документация по MQL5: Основы языка / Типы данных / Структуры и классы
Документация по MQL5: Основы языка / Типы данных / Структуры и классы
  • www.mql5.com
Основы языка / Типы данных / Структуры и классы - справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
 
ALXIMIKS:

operatore di assegnazione previsto in qualsiasi futuro?


C'è un sovraccarico su https://www.mql5.com/ru/docs/basis/function/operationoverload.

Per facilitare la lettura e la scrittura del codice, è permesso l'overloading di alcune operazioni. L'operatore di sovraccarico è scritto con laparola chiave operator. Il sovraccarico delle seguenti operazioni è permesso:

  • binary +,-,/,*,%,<<,>>,==,!=,<,>,<=,>=,=,+=,-=,/=,*=,%=,&=,|=,^=,<<=,>>=,&&,||,&,|,^;
  • unario +,-,++,--,~;
  • operatore di assegnazione =;
  • operatore di indicizzazione [].
Документация по MQL5: Основы языка / Функции / Перегрузка операций
Документация по MQL5: Основы языка / Функции / Перегрузка операций
  • www.mql5.com
Основы языка / Функции / Перегрузка операций - справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
 

Mi dispiace di essere stato impreciso e di essere stato vago su ciò che volevo fare.

Конструктор копирования и оператор присваивания вообще планируются хоть в каком-то будущем???

La classe di base A ha 15 campi, da essa due discendenti B e C - ognuno ha +5 campi in più.

E il resto è una ricerca di 20 minuti.

Volevo chiedere dei costruttori di copieimplicite e degli operatori di assegnazione.

Se ci sono e non ho ancora capito come usarli, per favore ficcate il naso (ve ne sarei grato).

Conosco icostruttori di copie esplicitee gli operatori di assegnazione, e li housati ,

Ma ho perso molto tempo, come mi sembra(avevo molti campi, molto più che nell'esempio),

anche se ho usato il modo migliore per implementarlo (riutilizzando il codice della classe base).

 
ALXIMIKS:

Mi scuso per essere stato impreciso e per aver formulato in modo approssimativo quello che volevo.

Volevo chiedere dei costruttori di copieimplicite e degli operatori di assegnazione.

Quindi ho sbagliato e la risposta sopra era corretta.

mql5:
Sì, lo faremo, ma non è ancora nei nostri piani immediati.
 
Tapochun:
Grazie per la risposta, è esattamente quello che ho fatto ora. Apparentemente perché la costruzione grafica è DRAW_NONE e l'indicatore è in una finestra separata, le due proprietà di costruzione si sovrappongono, il che fa scomparire i dati nella sottofinestra. Ma se usiamo INDICATOR_CALCULATIONS, i dati dei buffer 1 e 2 non saranno mostrati nella finestra dei dati, ma si può accedere ad essi dall'EA. Dovremo sacrificare la finestra dei dati)
Non si tratta di DRAW_NONE. I tuoi dati del buffer differiscono di tre ordini di grandezza, quindi il MACD non è visibile rispetto al prezzo (in scala). Però è sullo schermo))
 
Dopo l'ultimo aggiornamento del terminale (986, 26 settembre 2014) USDCHF e USDRUR hanno iniziato ad apparire da soli in Market Watch. Lo disinstallo e dopo un po' riappare. Perché?
 
Dima_S:
Non si tratta di DRAW_NONE. I tuoi dati del buffer sono tre ordini di grandezza diversi, quindi il MACD non è semplicemente visibile rispetto al prezzo (in scala). Però è sullo schermo))
Grazie mille. Questa è un'informazione molto preziosa per me! Infatti, tutto è logico! È un peccato che gli articoli sulla proporzionalità dei prezzi nei buffer e la visualizzazione in una sottofinestra non abbiano informazioni (anche se forse non l'ho notato io stesso).
 

Costruzione MT4 711

Lo script apre due nuovi grafici ed esegue altri 2 script su di essi.

Circa una volta su 10 esecuzioni si blocca (non vedo uno schema):

2014.10.02 12:21:59.892 Script open_script GBPJPY,M5: removed
2014.10.02 12:21:59.892 open_2_script GBPJPY,M5: global initialization failed
2014.10.02 12:21:59.892 open_2_script GBPJPY,M5: Invalid EX4 file (9)
2014.10.02 12:21:59.890 Script open_script GBPJPY,M5: removed
2014.10.02 12:21:59.890 open_script GBPJPY,M5: global initialization failed
2014.10.02 12:21:59.890 open_script GBPJPY,M5: Invalid EX4 file (6)
2014.10.02 12:21:59.887 Script open_script GBPJPY,M5: loaded successfully
2014.10.02 12:21:59.878 Script open_script GBPJPY,M5: loaded successfully
2014.10.02 12:21:59.692 Two_orders_in_same_time GBPJPY,M5: initialized
2014.10.02 12:21:59.679 Script Two_orders_in_same_time GBPJPY,M5: loaded successfully

Da cosa potrebbe provenire? Cosa significa 6 in "Invalid EX4 file (6)"?

Grazie.

 
ALXIMIKS:

Costruzione MT4 711

Lo script apre due nuovi grafici ed esegue altri 2 script su di essi.

Circa una volta su 10 esecuzioni si blocca (non vedo lo schema):

Da cosa potrebbe provenire? Cosa significa 6 in "Invalid EX4 file (6)"?

Grazie.

Stiamo indagando su un problema simile - in esecuzione con un file di configurazione. A volte l'EA non parte con sintomi simili.

Non abbiamo ancora trovato la causa. Non appena lo troviamo, lo sistemiamo subito.

 
stringo:

Stiamo indagando su un problema simile: l'avvio con un file di configurazione. A volte l'EA non parte con sintomi simili.

Non abbiamo ancora trovato la causa. Non appena lo troveremo, lo sistemeremo

Un piccolo ritardo tra le chiamate di funzione per avviare gli scriptSleep(50) mi ha aiutato;

Forse il problema è che diversi thread accedono allo stesso programma allo stesso tempo per caricarlo

Inserisci mutex))