Domande su OOP in MQL5 - pagina 58

 
Vladimir Simakov:

Lasciatemi spiegare.

In mql5, la classe annidata così come in plus è amica di quella esterna (a proposito, questo è il punto che non sapevo). Ma in mql4 non è implementato, e bisogna scrivere stampelle lì. Cioè, questo codice compilerà correttamente in mql5, ma causerà errori di compilazione in mql4.

Anche se, naturalmente, scriveranno che non è C++, ma comunque, farò un'analogia.

Non ricordo nulla sulle classi annidate nei documenti ufficiali di mql, o sulle peculiarità di accesso ai campi esterni da esso. Di conseguenza, tutto questo mi fa pensare a UB. Sì, funziona, ma porre le basi per questo, fino a quando le informazioni rilevanti non appaiono nei documenti, è un po' a vostro rischio e pericolo.

Il 5° viene corretto sempre più spesso per eliminare le incongruenze rimanenti. Si presta meno attenzione al 4. Probabilmente è questo il motivo. E apparentemente nessuno aveva bisogno di classi annidate prima in 4)))

 
Igor Makanu:

Perché la tua storia è istruttiva? Tutti ottengono un lavoro in questo modo - devi essere nel posto giusto al momento giusto, questo è tutto... c'era un posto vacante come addetto ai bottoni, così ti hanno assunto )))

o aveva qualche certificato straniero in quel momento?)


ZS: Perché lavori? I costi sono grandi? - Hai un assegno medio per l'EA 100-300 mila rubli, secondo me dovrebbe bastare almeno un mese )))).


UPD: ho avuto la sensazione di essere un partecipante involontario in un fenomeno da baraccone, non è giusto (((

Mi sono fatto una bella risata, grazie! )))) L'umorismo è una cosa molto importante...nell'OLP... )))))

 
Igor Makanu:

E qual è la natura istruttiva della sua storia?

Il mio punto è che le cose apparentemente complicate sono semplici. E questo thread di molte pagine è una discussione di cose semplici in parole complicate... Questo è l'intero messaggio...

 
Evgeniy Zhdan:

Il mio punto è che le cose apparentemente complicate sono semplici. E questo thread di molte pagine è una discussione di cose semplici in parole complicate... È proprio questo il punto...

Non riesco a ricordare una vecchia barzelletta, ma tutto quello che mi viene in mente è il finale "cosa c'è da pensare, devi saltare più in alto!

)))


Mi dispiace se ti ho offeso, non era mia intenzione, ma è così che la discussione si è trasformata in una baraonda totale.


grazie per il vostro aiuto nella discussione, sono fuori

 
Evgeniy Zhdan:

Il mio punto è che le cose apparentemente complicate sono semplici. E questo thread di molte pagine è una discussione di cose semplici in parole complicate... Questo è l'intero messaggio...

Sono d'accordo) Penso anche che il proprio atteggiamento... per esempio nei confronti dei modelli... di solito è espresso meglio dal proprio terapeuta ))))

 
Igor Makanu:

grazie per il vostro aiuto nella discussione, sono fuori

Avete risolto il vostro problema? )

Igor Makanu:

Dato:
1. Una macchina a stati finiti (FSA)
2. Il numero di KA è sconosciuto.
3. Stati del veicolo spaziale: successo / fallimento / lavoro
4. Le CA sono eseguite in diversi thread, il numero di thread è sconosciuto

Un modello deve permettere:
1. Emettere un ID unico per ogni processo - il contatore non funziona
2. Aggiungere spa spa in modo uniforme per fili
3. Ottenere lo stato del veicolo spaziale
4. Riavvia KA se lo stato di KA è lo stesso del task che è stato emesso in precedenza
5. Salvare AC nel database e rimuoverlo dal flusso se lo stato ha successo
6. Ripristinare lo stato di AC (ID dal salvataggio) e aggiungerlo al flusso
7. Per avere un pool comune per lo scambio di messaggi EA, il pool non è di gomma, gli EA cancellati non ricevono messaggi, ma gli EA appena creati dovrebbero ricevere nuovi messaggi e non quelli lasciati dagli EA uccisi, non c'è sincronizzazione tra i thread e gli EA
8. Salvare e ripristinare lo stato dell'intero pattern e del pool di messaggi

* Le KA non svolgono gli stessi compiti
** Message pool è il problema principale, ma può essere sia CA che DB o ?
*** forse è tutto lavoro di database e i modelli non sono affatto necessari qui?

Da questa descrizione astratta è difficile capire quale sia esattamente lo scopo di questo algoritmo. Ma sembra che tu sappia in cuor tuo che tutto si riduce a una banale routine DB, e tutta questa astrusa lista è un tentativo di tagliare le tonsille attraverso il culo )

Lo stesso di questo sfortunato Keeper. Essenzialmente, bisogna copiare il contenuto di un oggetto in qualche contenitore, e poi da quel contenitore di nuovo nell'oggetto. Ma no, bisognava inventare un misterioso Memento che controlla tutto. Solo confondendo l'algoritmo e creando un overhead sul posto.

 
Alexey Navoykov:

Avete risolto il vostro problema? )

Sì, l'informazione fisica è stata raccolta e ora viene assorbita e analizzata.

E grazie, come uno dei pochi che può scrivere in sostanza pur esprimendo un'opinione personale.


Alexey Navoykov:

Da questa descrizione astratta, è difficile capire lo scopo specifico di questo algoritmo.

Penso che la ricerca di informazioni debba sembrare così astratta, e non si tratta di qualche documento di ricerca segreto con un premio Darwin in seguito....

seriamente, se scrivo obiettivi specifici - sono implementati, ma tutto è storto e storto, allora dovrò discutere la vostra esperienza precedente e non il mio obiettivo - strutturare il codice slash, perché ora è possibile trasferire algoritmi da zero - i volumi sono piccoli e i poteri sono chiaramente divisi.... ma in 3 compiti di lavoro separati, e l'obiettivo alla fine è comune.... vedi, tutto è diventato chiaro ora ))))

 

ciao di nuovo!


questa domanda, c'è un enum, abbiamo bisogno o di un enum array o un enum lista o un enum contenitore - qualcosa dove memorizzare 7 enum, ma l'appetito cresce, forse 70 enum


dove?

 
Igor Makanu:

questa domanda, c'è un enum, abbiamo bisogno o di un array enum o di un elenco enum o di un contenitore enum - qualcosa per memorizzare 7 enum ora, ma l'appetito sta crescendo, forse 70 enum

7 tipi enum o 7 valori enum?
 
Alexey Navoykov:
7 tipi enum o 7 valori enum?

7 tipi, numero di valori arbitrari


l'unica cosa che mi viene in mente è una struttura come contenitore, ma sto cercando di nuovo informazioni tecniche ))


il problema è che solo la visibilità globale degli enum è supposta, ma per salvare lo stato degli oggetti, è necessario utilizzare enum specifici