Tutte le domande dei nuovi arrivati su MQL4 e MQL5, aiuto e discussione su algoritmi e codici - pagina 1566
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
Se avete un EA di tre righe, allora ovviamente non avete bisogno di OOP).
Ma se dovessi creare Goblin con un braccio e tre gambe, e poi con una gamba e tre braccia - allora, sì, è lì che l'OOP mi aiuterebbe davvero. Anche se... Non lo so nemmeno io.
Che senso ha averlo qui?
E non importa affatto quante "linee" avete. ;)Solo int o double?
E se la variabile è un oggetto di una classe?
E se il numero di tali oggetti è sconosciuto in anticipo [prima dell'esecuzione di OnInit()]?
E se i parametri dei costruttori sono sconosciuti in anticipo [prima di OnInit()]?
Hai dato un buon link e un esempio sulla dichiarazione delle classi.
In ogni caso, quelli globali sono dichiarati prima di OnInit(); gli altri sono dichiarati ogni volta che sono necessari
In ogni caso, i Global sono dichiarati prima di OnInit(), gli altri sono dichiarati ogni volta che sono necessari
Questo è chiaro in teoria.
In pratica, dopo :
la dichiarazione di 'NB_M1' nasconde la variabile globale -> per linea in OnInit()
vedere la precedente dichiarazione di 'NB_M1'.
l'esperto funziona come se NB_M1 fosse globale (e correttamente inizializzato), anche se è nascosto da una dichiarazione locale e inizializzato come locale in OnInit().
Per idea, non dovrebbe funzionare affatto.
In teoria, questo ha senso.
In pratica, dopo :
la dichiarazione di 'NB_M1' nasconde la variabile globale -> per linea in OnInit()
vedere la precedente dichiarazione di 'NB_M1'.
l'esperto funziona come se NB_M1 fosse globale (e correttamente inizializzato), sebbene sia nascosto dalla dichiarazione locale in OnInit().
Per idea, non dovrebbe funzionare affatto.
E non importa quante "corde" hai. ;)Quando avete un centinaio di righe di codice, perché volete aggiungere prima questo, poi dimenticare a cosa serve questo, poi aggiungere questo, allora naturalmente (?) sorgerà il pensiero: "Come organizzarlo?" Oppure no).
Cos'è NB_M1? Forse è già dichiarato nella libreria? E senza codice, è come sordo e cieco)
NB_M1 è un oggetto di classe CIsNewBar per definire l'inizio di una nuova barra per ogni carattere. No, non è dichiarato nella libreria.
Codice nel primo post: https://www.mql5.com/ru/forum/160683/page1547#comment_23712294
NB_M1 è un oggetto di classe CIsNewBar per definire l'inizio di una nuova barra per ogni carattere. No, non è dichiarato nella libreria.
Il codice nel primo post: https://www.mql5.com/ru/forum/160683/page1547#comment_23712294
Quindi, NB_M1 è dichiarato all'interno della classe e vi si può accedere
Possiamo dare un'occhiata al codice di questa classe?
NB_M1 è un oggetto di questa classe. Come metterlo dentro?
NB_M1 è un oggetto di questa classe. Come metterlo dentro?
Penso che questo sia il modo in cui dovrebbe essere