Errori, bug, domande - pagina 1500

 
coderex:

Prima di lavorare con un grafico, questo deve essere attaccato a un oggetto di classe utilizzando il metodo Attach!!! Se non volete lavorare con il grafico corrente ( 0 ) allora implementate questo controllo e vietate l'uso del grafico corrente nel vostro lavoro.

E cosa significa lavorare con il grafico e non chiuderlo usando il metodo Detach per uscire? È davvero difficile scrivere una riga nel distruttore delle vostre classi o in OnDeinit? Dovete controllare rigorosamente il lavoro con gli oggetti, e allora eviterete gli errori.

Posso darvi lo stesso consiglio. Prima di lavorare con qualsiasi grafico, devi attaccarlo a un oggetto della tua classe usando il metodo Attach(). Se volete lavorare con il grafico corrente, usate il metodo Attach( void ). Se avete ottenuto prima l'id del grafico, usate il metodo Attach( chart ). Se volete lavorare con un nuovo grafico, usate il metodo Open(). Usate questo metodo solo per aprire un nuovo grafico e lavorare con esso.

Se volete lavorare con il grafico, senza chiuderlo, allora dovete dimenticare di chiamare il metodo Detach(). Insieme all'errore di apertura - il risultato è la chiusura del grafico di qualcun altro. Non va bene!

Qui stai scrivendo in modo interessante. Se non ti piace qualcosa, fai un controllo lì, aggiungilo lì e viviamo come una volta. Posso scrivere la mia biblioteca, penso, proprio come te. Perché, quando il lavoro è stato fatto per noi? Miglioriamo quello che abbiamo invece di inventare stampelle. È un bene che gli sviluppatori siano stati veloci ad ascoltarmi e a fare le modifiche necessarie.

 

Come non capite, state chiedendo agli sviluppatori di uccidere la capacità di lavorare con il programma attuale. Se non volete controllare correttamente il processo di creazione, funzionamento e cancellazione degli oggetti, sovraccaricate voi stessi il metodo Open, come suggerito dagli sviluppatori.

Infatti, quando si crea un oggetto di classe, tutti i suoi campi sono inizializzati con degli zeri, non è il C++ puro, dove si è costretti ad azzerare tutto dopo la creazione.

E si crea un oggetto classe, si lavora con esso e si lancia semplicemente l'oggetto da cancellare, senza staccare il grafico dall'oggetto classe. E gli sviluppatori cambieranno il metodo Open e si pone la domanda: perché il metodo Attach sovraccaricato è stato creato in primo luogo?

Sviluppatori, considerate di rompere la vostra ideologia di lavoro con la libreria standard prima di fare queste modifiche.

 
coderex:

Come non capite, state chiedendo agli sviluppatori di uccidere la capacità di lavorare con il programma attuale. Se non volete controllare correttamente il processo di creazione, funzionamento e cancellazione degli oggetti, sovraccaricate voi stessi il metodo Open, come suggerito dagli sviluppatori.

Infatti, quando si crea un oggetto di classe, tutti i suoi campi sono inizializzati con degli zeri, non è il C++ puro, dove si è costretti ad azzerare tutto dopo la creazione.

E si crea un oggetto classe, si lavora con esso e si lancia semplicemente l'oggetto da cancellare, senza staccare il grafico dall'oggetto classe. E gli sviluppatori cambieranno il metodo Open e si pone la domanda: perché il metodo Attach sovraccaricato è stato creato in primo luogo?

Sviluppatori, considerate di rompere la vostra ideologia di lavoro con la libreria standard prima di fare queste modifiche.

Comunichiamo con esempi. Le tue accuse infondate stanno diventando fastidiose. E cosa le fa pensare che il suo approccio, secondo me, fondamentalmente falso, sia corretto?

E voi, avendo creato un oggetto di classe, lavorato con esso, buttate semplicemente via l'oggetto, senza staccare il grafico dall'oggetto della classe. E gli sviluppatori ora cambieranno il metodo Open, il che fa sorgere la domanda: perché il metodo Attach sovraccaricato è stato creato in primo luogo?

Il metodo Detach() è un argomento a parte. Quello di cui stiamo discutendo ora è che Open() può imporre il lavoro con il grafico corrente implicitamente! Per questo c'è il metodo Attach(). Non è chiaro chi e cosa verrà ucciso regolando il metodo Open()...
 
Slawa:

Come si fa a cambiare GMT? "È un monumento!" (c) GMT è il tempo medio di Greenwich

Hahaha...

Sei così spiritoso.

 
Alexey Kozitsyn:

Comunichiamo con esempi. Le tue accuse infondate cominciano ad annoiarci. E cosa le fa pensare che il suo approccio, secondo me, fondamentalmente falso, sia corretto?

Il metodo Detach() è un argomento di discussione a parte. Quello di cui stiamo discutendo ora è che Open() può imporre il lavoro con il grafico corrente implicitamente! Per questo c'è il metodo Attach(). Non è chiaro chi e cosa verrà ucciso quando si regola il metodo Open()...

Pensate quello che volete, ma queste linee di codice nell'aggiornamento proposto dell'Open:

   if(m_chart_id==0)
      m_chart_id=-1;

cambierà il campom_chart_id che contiene l'ID del grafico a -1, se il grafico è attuale cioè ( 0 ), che tipo di accuse infondate ci possono essere, e nessuno ti sta accusando, sei confuso. Se non volete scrivere secondo l'ideologia della libreria standard, sovraccaricate i metodi che credete non funzionino come volete. Capisco se la classe fosse integrata in qualche meccanismo comune, come per esempio la famiglia di classi dei pannelli di controllo, dove alcuni metodi non possono essere sovraccaricati a causa dei campi che contengono nella sezione privata della classe. Ma qui la classe è semplice, potete cambiare voi stessi il suo comportamento. Ma se gli sviluppatori cambiano il metodo Open come descritto sopra, allora il metodo Attach() non sarà chiaro, perché è il grafico attuale ( 0 ). In altre parole, la prossima chiamata di Open avrà come risultatom_chart_id == -1.

Infatti, non è un problema per me, aggiungo solo una linea a OnInit che ottiene l'ID del grafico corrente e lego il grafico all'oggetto della classe usando il metodo Attach(long chart), ma alcuni sviluppatori che non leggono questo ramo, potrebbero avere delle situazioni strane e "inaspettate".

 
C'è un modo per copiare le variabili dal file ex4?
 
Vasyl Nosal:
C'è un modo per copiare le variabili dal file ex4?
salvare il file del set - io lo faccio sempre
 
Vladislav Andruschenko:
salvare il file set - lo faccio sempre

:))

Non si può.

Nei file mq4 è possibile.

(indicatore)

 
Vasyl Nosal:

:))

Non si può.

Nei file mq4 è possibile.

(indicatore)

Template? Non c'è nessun tipo di dati lì.

 
poi solo con il templating