Discussione sull’articolo "Le tabelle elettroniche in MQL5"
Eh... Mi piacerebbe vedere un piccolo esempio di come ordinare la seconda colonna in un array bidimensionale 3x3. Cosa dovrei scrivere nel codice dopo #include <Table.mqh>?
Il codice seguente produce degli zeri. Dov'è l'errore?
#include <Table.mqh> void OnStart(){ ENUM_DATATYPE Types[3]; Types[0] = TYPE_DOUBLE; Types[1] = TYPE_DOUBLE; Types[2] = TYPE_DOUBLE; CTable Table; Table.FirstResize(Types); Table.SecondResize(3); Table.Set(0,0, 1); Table.Set(0,1, 4); Table.Set(0,2, 23); Table.Set(1,0, 2); Table.Set(1,1, 7); Table.Set(1,2, 48); Table.Set(2,0, 3); Table.Set(2,1, 1); Table.Set(2,2, 77); Table.SortTwoDimArray(1,0,Table.SecondSize()-1); string txt; for(int i=0; i<Table.SecondSize(); i++){ for(int j=0; j<Table.FirstSize(); j++){ double k; Table.Get(i,j,k); StringConcatenate(txt, txt, " ", DoubleToString(k)); } Print(txt); txt=""; } }//OnStart()
Si sta assegnando il tipo int ai campi della tabella dichiarati come double
prova questo o questo...
Table.Set(0,0, 1.); Table.Set(0,1, 4.); Table.Set(0,2, (double)23); Table.Set(1,0, 2.); Table.Set(1,1, 7.); Table.Set(1,2, (double)48); Table.Set(2,0, 3.); Table.Set(2,1, 1.); Table.Set(2,2, (double)77);
Nikolay, ho una domanda.
È possibile scrivere una tabella da MT5 a Excel in questa forma?
Mi interessano i nomi delle 2 macro colonne ("Dati assoluti" e "Dati relativi"), che sono evidenziati in colore. Esse uniscono 3 celle ciascuna.

Forse voglio molto da MQL5 in termini di formattazione delle celle di Excel. E se :-)))
Nikolay, ho una domanda.
È possibile scrivere una tabella da MT5 a Excel in questa forma?
Mi interessano i nomi delle 2 macro colonne ("Dati assoluti" e "Dati relativi"), che sono evidenziati in colore. Esse combinano 3 celle ciascuna.
Forse voglio molto da MQL5 in termini di formattazione delle celle di Excel. Ma se :-)))
Quale significato fisico attribuire alle parole "combinare 3 celle"?
In linea di principio è possibile, ma senza le 2 righe superiori, i tipi di dati sono riassunti per colonne, in modo che in una colonna per stipare stringa e doppio non funzionerà, ma può essere fatto quando si stampa. Oppure perfezionare la classe in modo che contenga stringhe maiuscole formattate separatamente dalla tabella.
Il modo più semplice è creare due tabelle e unirle.
- www.mql5.com

Il nuovo articolo Le tabelle elettroniche in MQL5 è stato pubblicato:
L'articolo descrive una classe di array bidimensionali e dinamici contenente dati di tipo diverso nella sua prima dimensione. La memorizzazione dei dati sotto forma di tabella è utile per risolvere un'ampia gamma di problemi di disposizione, memorizzazione e funzionamento con informazioni associate di diverso tipo. Il codice sorgente della classe che implementa la funzionalità di lavorare con le tabelle è allegato all'articolo.
Il codice della classe CTable è stato scritto utilizzando i modelli descritti nell'articolo Using Pseudo-Templates as Alternative of С++ Templates. Solo grazie all'utilizzo dei modelli, ho potuto scrivere un codice così grande così rapidamente. Ecco perché non descriverò l'intero codice nei dettagli; inoltre, gran parte del codice degli algoritmi è una modifica delle classi standard.
Mostrerò solo la struttura generale della classe e alcune delle caratteristiche più interessanti delle sue funzioni che chiariscono alcuni punti importanti.
Autore: Nikolay Demko