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
Dove sono le classi in MQL4, C-4? E credo che gli sviluppatori abbiano detto che non ci sarà alcuna eredità in 5 per il momento.
Dove sono le classi in MQL4, C-4? E credo che gli sviluppatori abbiano detto che non ci sarà alcuna eredità nella 5.
C'è già, con tutti i suoi annessi e connessi. E si può vedere anche in Tetris (in fonti mq5).
Wow, questo è interessante. Tre mesi dalla pubblicazione del giocattolo, e l'ho appena scoperto...
Wow, questo è interessante. Tre mesi dalla pubblicazione del giocattolo e l'ho appena scoperto...
Credo di essermelo perso....
qual è il senso di questa esclamazione "wow"? c'è qualche mt5 là fuori per testare le fonti? se sì, non ti dispiace darmi un link per scaricarlo.
Beh, no, MT5 non è ancora visibile (ai comuni mortali), ma almeno si può guardare il codice. È più o meno chiaro cosa aspettarsi.
Qualcuno può suggerire un'applicazione che possa analizzare il sorgente MQL e produrre in qualche forma i nomi delle variabili/funzioni usate e il numero delle loro "menzioni" nel testo?
per esempio per catturare resti di variabili inutilizzate dai testi buttati via, e per non rinominare accidentalmente un nome gravemente abbreviato in qualcosa di più lungo e più chiaro, che si rivela essere il nome di una variabile globale, di cui vi siete dimenticati molto tempo fa e che esiste da qualche parte nel codice.
Preferisco
se ( a > c )
codret = 3;
se ( l < b )
codret = 5;
...
...
se ( h != b )
codret = 100;
// specialmente se ci sono alcune operazioni aggiuntive comuni a tutte le uscite prima del ritorno
... per esempio qui facciamo qualcos'altro
retrun( codret);
}
Hai appena dato un ottimo esempio del perché io uso uscite multiple di ritorno. Nel vostro esempio, la funzione restituirà l'ultimo if() attivato, non il primo. Nel mio esempio, la funzione restituirà la prima corrispondenza. In pratica, trovo spesso che ho bisogno di restituire esattamente il primo valore corrispondente, e quasi mai devo restituire l'ultimo controllo attivato. In questo esempio, avere un solo ritorno non rende più facile rintracciare i valori restituiti dalla funzione, al contrario, ci si può aspettare tutto da un solo ritorno.
A proposito, personalmente non mi piace separare il carattere cruciale ";" dall'espressione:
extern double max_price[100] ; //memorizza i prezzi dei massimi delle ultime cento barre
extern double max_price[100] ; //tiene i prezzi delle ultime cento barre massimo - scrivo solo così
No, qui si parla solo di stile. A proposito, in alcuni casi non mi dispiace affatto il goto.
Perché dichiarare una funzione dentro una funzione? Personalmente, essendo cresciuto solo in C e C++ non capisco questo metodo.
Incapsulamento... Quando si scrivono template e si vuole nascondere una funzione o un funtore o una classe molto locale, è molto utile.
E la maggior parte delle volte puoi cavartela con uno spazio dei nomi senza nome.
2. Odio lo stile molto comune di mettere parentesi graffe come questa:
Molto invano. Un terreno fertile per tutti i tipi di bloopers con le bretelle. In passato, la giustificazione era il risparmio di spazio e la regola della dimensione del codice funzione.
Ma ora, nell'era dei terabyte, perché dovremmo essere dispiaciuti per la mancanza di spazio?
5. Uso funzioni dentro funzioni:
Inefficiente (con diverse chiamate di uno), spalmato e lungo. Soprattutto uno di UB, che è un focolaio di errori maligni non banali.
Ulteriore -- riguardo ai copypastes. Una cosa molto fastidiosa :). Lo confesso, lo uso e faccio errori molto spesso. Per esempio, ho dimenticato di rinominare una variabile, cambiare un commento o altro.
Ecco perché la revisione del codice è una cosa molto utile.
Su Pascal :) . Fino ad ora, è ancora la principale lingua olimpica. Per una semplice ragione: poche parole chiave, struttura logica.
Per molto tempo non ho creduto che il Pascal (o meglio Delphi) fosse peggio del C++, finché non ho scoperto che il C++ era migliore.
Ora penso che il Pascal sia migliore in un modo: è più difficile scrivere codice binario in esso.
>> Poi, riguardo ai commenti, sono tutte stronzate, soprattutto riguardo al 30%.
Scrivete codice auto-documentante e sarete felici. Poiché non ci sono classi in MQL4 è piuttosto difficile da fare. Ma con le lezioni dovrebbe diventare più facile.
Tutto il resto - indentazione, principi di denominazione, allineamento - non sono altro che raccomandazioni.
A proposito, parlando di funzioni. Quale dovrebbe essere il carattere? E se fosse una linea in più? La cosa principale è rendere chiaro cosa fa, e il resto sono solo raccomandazioni.
La cosa più importante è rendere il codice il più comprensibile possibile per coloro che potrebbero mantenerlo.