Errori, bug, domande - pagina 1337
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
Gli sviluppatori non sono privi di umorismo.
Mi suona come un download, e una specie di albero "Download" che oscilla a destra o a sinistra.
Se "ondeggia", avresti potuto paragonarlo a un albero: "destra/sinistra" - sei anche spiritoso (fuso "destra/sinistra")
"ondeggiare" nella barca,
E la cosa (fusa a destra/sinistra) non è colpa mia, è di Firefox.
Sui personaggi BR-8.15 e BR-10.15 glitch, altri periodi BR vanno bene.
costruire 1150 apertura reale win7 x64 max
File video .mp4 nel trailer.
+ sul periodo M1 (per esempio)
Se si preme il pulsante "autoscorrimento del grafico alla fine con l'arrivo di nuovi tick" - il grafico viene spostato all'inizio
Poi, se si preme il tasto "END", il grafico si sposta alla fine per un secondo e di nuovo - si sposta all'inizio.
Non ci avevo fatto molto caso prima, ma ora, quando lavoro con grandi array di oggetti di classe, ho notato un consumo di memoria troppo grande. Ho controllato con sizeof() e una classe assolutamente vuota prende 16 byte. E considerando che le classi qui sono gestite, aggiungiamo altri 8 byte per puntatore. Il totale è 24 byte. È troppo costoso.
Ho guardato la documentazione e ho visto quello che ho trovato lì:
La domanda è perché le classi semplici (quelle che non partecipano all'ereditarietà) hanno bisogno della tabella delle funzioni virtuali, dato che tutto è noto su queste classi in fase di compilazione.
Si scopreche i metodi in essi sono chiamati nello stesso modo dei metodi virtuali, cioè c'è un ulteriore reindirizzamento dell'accesso attraverso la tabella. E dov'è la decantata ottimizzazione del compilatore? Come possiamo affermare dopo questo qualche confronto di prestazioni con C++?
Inoltre, MQL, alcune chiamate virtuali sono eseguite come normali chiamate di funzione, non attraverso la tabella.
Come ha scritto Renat, le classi in MQL hanno davvero sempre una tabella virtuale, che prende 8 byte + 8 byte di metainformazioni.
Gli sviluppatori non sono privi di umorismo.
Mi suona come un download, e una specie di albero "Download" che oscilla a destra o a sinistra.
L'ipotesi evidenziata non è corretta, solo i metodi virtuali sono chiamati attraverso la tabella e la mia affermazione non è solo vera per il compilatore MQL.
Inoltre, MQL, alcune chiamate virtuali sono fatte come normali chiamate di funzione, non tramite tabella.
Come ha scritto Renat, le classi in MQL hanno sempre una tabella virtuale che prende 8 byte + 8 byte di metainformazioni.
Grazie per la risposta, ma potresti spiegare perché una classe semplice, che non è ereditata da nessuno e quindi non partecipa alla virtualizzazione, ha bisogno di una tabella? Renat ha parlato di distruttori virtuali, ma in questo caso non c'è niente da virtualizzare. C'è solo un distruttore, quindi può essere anche inlined, no, lasciando così solo 8 byte di metadati.
Il sistema di runtime (ambiente di programma MQL) è costruito con il presupposto che una classe occupi almeno 16 byte.
costruire 854 vin 10 64 x
Quando si testano gli EA con la visualizzazione, quando si cerca di chiudere qualsiasi altra finestra aperta in precedenza che la finestra di lavoro corrente con il test, il test viene interrotto...
Chiuso tramite il pulsante centrale del mouse e il menu di contesto ...