Domande dai principianti MQL5 MT5 MetaTrader 5 - pagina 188
Ti stai perdendo delle opportunità di trading:
- App di trading gratuite
- Oltre 8.000 segnali per il copy trading
- Notizie economiche per esplorare i mercati finanziari
Registrazione
Accedi
Accetti la politica del sito e le condizioni d’uso
Se non hai un account, registrati
Ciao!
Non riesco a capire quale intervallo per visualizzare un oggetto grafico
su tutti i tempi.
Grazie.
OBJ_ALL_PERIODS=2097151
Qualcuno sa se il compilatore ha una chiave per ottenere messaggi su funzioni e variabili inutilizzate, come si fa in MQL4?
Come si fa in mql4?
Interrogato sul fatto di non mostrare avvisi sulle funzioni inutilizzate, Renat ha detto che non lo farà. In relazione all'uso di librerie collegabili. Era nella vecchia costruzione. Ora non lo è più. È molto scomodo cercare quelle funzioni nel corpo dell'EA che non sono utilizzate. Parla solo di variabili inutilizzate se le trova nel corpo di una funzione, non in start() o OnTick()
Come si fa in mql4?
Interrogato sul fatto di non mostrare avvertimenti sulle funzioni inutilizzate, Renat ha detto che non lo farà. A causa dell'uso di librerie di plugin. Era nella vecchia costruzione. Ora non lo fa più. È molto scomodo cercare quelle funzioni nel corpo dell'EA che non sono utilizzate. Parla solo di variabili inutilizzate se le trova nel corpo di una funzione, non in start() o OnTick()
Perché in OOP non sono funzioni, ma metodi. Ogni libreria può avere un mucchio di classi con molti metodi, alcuni dei quali non vengono utilizzati. Inoltre, le classi fanno riferimento anche ad altre librerie, alcuni dei cui metodi non vengono utilizzati. Questo può risultare in un enorme casino di metodi inutilizzati.
A giudicare dalla quantità di codice compilato, il compilatore elimina automaticamente i metodi inutilizzati. Cioè, non ha senso cercarli da soli, perché questo lavoro è fatto dal compilatore.
Perché in OOP, non funzioni, ma metodi. Ogni libreria può avere un mucchio di classi con molti metodi, alcuni dei quali non vengono utilizzati. Inoltre, le classi fanno riferimento anche ad altre librerie, alcuni dei cui metodi sono anche inutilizzati. Questo può risultare in un'enorme pila di metodi inutilizzati.
A giudicare dalla dimensione del codice compilato, il compilatore elimina automaticamente i metodi inutilizzati. Cioè, non ha senso cercarli da soli, perché il compilatore fa questo lavoro.
Perché in OOP, non funzioni, ma metodi. Ogni libreria può avere un mucchio di classi con molti metodi, alcuni dei quali non vengono utilizzati. Inoltre, le classi fanno riferimento anche ad altre librerie, alcuni dei cui metodi sono anche inutilizzati. Questo può risultare in un'enorme pila di metodi inutilizzati.
A giudicare dalla dimensione del codice compilato, il compilatore elimina automaticamente i metodi inutilizzati. Cioè, non ha senso cercarli da soli perché il compilatore fa questo lavoro.
Spero che la discussione sulla domanda precedente sia finita. È difficile sapere quando l'argomento è chiuso ed è opportuno fare la tua domanda. Puoi darmi un suggerimento? Non riesco a capire come riempire un array 2D con i risultati dei calcoliSt_handle eMA_handle, posso solo passarli ad un array unidimensionale.
Non è questo il problema. Il problema è esattamente trovare metodi inutilizzati nelle vostre classi.
Cosa intendi con: metodi inutilizzati nelle tue classi? Questa non è la pratica in OOP. Un normale programmatore OOP, in contrasto con la programmazione algoritmica, crea classi con tutti i campi e i metodi necessari, come si dice, per tutte le occasioni, perché la stessa classe può essere utilizzata in seguito in altre applicazioni o diventare parte della libreria di classi. Per non parlare del fatto che anche all'interno di un progetto è meglio creare classi complete, non spogliate, in modo da non dover cercare nel codice sorgente e aggiungere successivamente i campi e i metodi necessari.
In OOP qualsiasi economia, a cui molte persone si abituano nella programmazione algoritmica, può rivelarsi dannosa in seguito. Tutto ciò che non viene utilizzato deve essere escluso dal codice dal compilatore e non dal programmatore.
Naturalmente, OOP si traduce in un codice sorgente più grande rispetto alla programmazione algoritmica. Ma questo non è uno svantaggio, ma un vantaggio, perché molto del codice "extra" di questo progetto può essere riutilizzato in altri progetti.
Io ho più di cinquecento metodi propri. Le interrelazioni sono molto complesse. Il codice rudimentale è inevitabile. È molto utile per vedere rapidamente ciò che non è più utilizzato.
Puoi darmi un suggerimento? Non riesco a capire come riempire un array 2D con i risultati dei calcoliSt_handle eMA_handle, posso solo passarli ad un array unidimensionale.
Qual è il punto? Cioè, perché fare una gobba invece di usare il rasoio di Occam? Cioè, qual è il vantaggio di un array bidimensionale rispetto a due array unidimensionali? Dopo tutto, bisogna prima spingere qualcosa da due monodimensionali create da indicatori di default in una bidimensionale, e poi prendere qualcosa da lì. Stai facendo un lavoro inutile e stai cercando di trascinare gli altri in questo.
Se ci fosse un problema con gli array monodimensionali, allora ne varrebbe la pena.
Scusate se questo è fuori tema ...
aiutare chi può ...
in delphi 7 procedura dll...
procedura test1(var data: array of Double); stdcall;
begin
ShowMessage('Entered ');
fine;
in mt4 :
#import "gayss.dll"
void test1( double &data[] );
#import
ArrayResize(data, 6);
data[0]= 2;
data[1]= 4;
data[2]= 8;
data[3]= 16;
data[4]= 21;
dati[5]= 3;
test1(dati);
e appare un errore... 2014.02.06 17:39:04.241 stack danneggiato, controllare la chiamata di funzione DLL in 'SOG_2014.mq4' (80,7)
Chi sa come farlo bene...