Bug del compilatore con il parametro template = void* - pagina 13

 
Alexey Navoykov:

Finora, ho solo fatto scorrere automaticamente il registro alla fine della compilazione fino all'inizio del primo errore (se c'è). Senza di esso, ho dovuto costantemente scorrere manualmente la lista (e non è piccola), cercando il messaggio di errore. Che rottura di scatole.

C'è anche Autoscroll (tasto destro del mouse) - deselezionare

 

Ilya Malev:

E per compiti più concreti, questo numero indica il numero di oggetti creati nel sistema ed è utile per il debug in qualsiasi architettura basata su liste dinamiche. Non a caso, non sono il primo che ha capito come "imbrogliare" il divieto di ottenerlo, e mi è stato anche detto un modo più veloce, anche se solo per 4.

Beh, ho sempre sostenuto che laconversione esplicitadel puntatore a long è utile. Ma gli sviluppatori non hanno capito l'utilità e l'hanno rimosso. Ho un modo leggermente diverso - non scriverò quale, altrimenti verrà chiuso anche questo
 
A100:
Beh, ho sempre sostenuto che laconversione esplicitadei puntatori in long è utile. Gli sviluppatori non hanno capito l'utilità e l'hanno rimosso. Ho un modo leggermente diverso - non scriverò quale, altrimenti verrà chiuso anche questo

Scrivetemi pure in PM o sulla mia email, se non è troppo disturbo, non mi impongo. Sono davvero interessato a questo, sul forum non mostrerà.

P.S. Anche se se si include dll allora non farlo, perché gli svantaggi di questa soluzione più che i pro.

P.S.S. Se ci pensate, la scappatoia con PrintFormat e StringConcatenate è stata lasciata consapevolmente, altrimenti è difficile immaginare perché l'abbiano lasciata. Devono aver visto che l'hanno fatto. Quindi, non c'era motivo di sovrapporre tutti i metodi e non c'è bisogno di preoccuparsi.

Dopo tutto, è solo un numero. Essere in grado di capirlo non costituisce una minaccia alla sicurezza e all'integrità dei dati, perché né cambiarlo né usarlo in qualche modo "speciale" dopo averlo ricevuto è comunque impossibile, e non è nemmeno un riferimento a un'area di memoria, ma un semplice contatore di stack. Probabilmente non era questo numero ad essere chiuso, ma il secondo int in particolare, che potrebbe già puntare ad uno spazio di memoria reale, ecc. Ma non ne abbiamo bisogno per tutti questi scopi.
 
A100:

E c'è anche Auto Scroll (clic destro) - deselezionare

Hmm, infatti, ora funziona correttamente. Ho appena fatto per le vecchie build, lì ha funzionato in modo errato, scorrendo non al primo errore, ma da qualche parte nel mezzo. Ho sopportato a lungo, ma poi i miei nervi sono venuti meno ) Si è scoperto, potrei essere paziente - e non avrebbe dovuto reinventare la ruota )
 
Il valore numerico di un puntatore può essere utile quando si memorizza un array di puntatori. Si organizza una disposizione ordinata di essi con un accesso rapido in base al suo valore, altrimenti si deve passare attraverso l'intero array per cercare il puntatore giusto.
 
Alexey Navoykov:
Hmm, ora funziona correttamente. Ho appena fatto per le vecchie build, ci ha funzionato male, scorrere non al primo errore, ma da qualche parte nel mezzo. Per lungo tempo, tollerato, ma poi i nervi è andato fuori ) Si scopre, potrebbe ancora essere paziente - e non avrebbe dovuto reinventare la ruota).

Dovresti ricevere una medaglia per questo. Ero nervoso alla fine della prima settimana, alla fine della seconda settimana ho trovato il tasto giusto

 
A100:

Dovresti ricevere una medaglia per questo. Mi sono innervosito alla fine della prima settimana, e alla fine della seconda settimana ho trovato il tasto giusto

Così prima tutto andava bene. ora specificatamente controllato su diverse build, questo bug è iniziato con la build 1550, ed è durato per molte build. Nessun pulsante potrebbe aiutarti in questo caso)
 
Alexey Navoykov:
Quindi prima andava bene. Ora ho controllato appositamente su diverse build, questo bug è iniziato con la build 1550, ed è durato per molte build. Nessun pulsante potrebbe aiutarti in questo caso)
E in MT5x32 tutto era stabile. Almeno, non ho notato alcun inconveniente, e avrei dovuto notarlo, perché ci sono molti errori e sarebbe stato molto problematico arrivare all'errore
 
Ilya Malev:
E se parliamo di compiti più banali - questo numero indica il numero di oggetti creati nel sistema ed è utile per il debug in qualsiasi architettura basata su liste dinamiche. Non a caso, non sono il primo che ha capito come "imbrogliare" il divieto di ottenerlo, e mi è stato anche detto un modo più veloce, anche se solo per 4.

Attualmente, vorrei collegare il modulo VS a .dll a MT5 in un modo semplice )))) - Voglio avvolgere i gestori del clic del pulsante in una classe e chiamarli attraversando un array di puntatori di funzioni di gestione, e voglio avere nel codice principale di EA la possibilità di scrivere gli stessi nomi di funzioni come in VS, cioè button2_Click() ....button2_Click()

SZZ: Questo è un problemaEOP).


Per il sabotaggio, nelle ultime 3 pagine abbiamo discusso sull'opportunità di mettere molte parentesi o meno, imho, le prestazioni del codice compilato non sono influenzate da un gran numero di parentesi, ma il programmatore definisce chiaramente la sequenza di calcolo dell'espressione aritmetica/logica, che non cambierà durante gli aggiornamenti di MT, così come non cambierà durante il porting del codice ad altri linguaggi di programmazione - cioè, se non siamo pigri e ci prendiamo la responsabilità del risultato finale, mettiamo molto)))

Еното-ориентированное программирование
Еното-ориентированное программирование
  • habr.com
По английски units это units, а по сербски = енот. Желающим написать, что слова "амбула" нет, я его дарю. Благодать Спорьте = не спорьте, в большинстве, обычные люди хотят себя чувствовать хорошо = стремятся к благодати: есть, двигаться, обладать… программировать. Физиология Программировать кайфово. Во время удачного программирования...
 
Igor Makanu:

Per quanto riguarda l'argomento, le ultime 3 pagine discutono l'opportunità di mettere molte parentesi o meno, imho, le prestazioni del codice compilato non sono influenzate da un gran numero di parentesi, ma il programmatore definisce chiaramente la sequenza di calcoli di espressioni aritmetiche/logiche, che non cambierà durante ulteriori aggiornamenti MT, così come non cambierà quando si porta il codice in altri linguaggi di programmazione - cioè, se non siamo pigri e molto responsabili del risultato finale, mettiamo molte parentesi ))))

E perché non li metti tu stesso? Non mi sono preso la briga di guardare il suo profilo:

  if (totsell==0 && totbuy==0)

Dovrebbe essere così:

  if ((totsell==0) && (totbuy==0))

Dichiari una cosa, ma fai l'esatto contrario.

Se anche gli aderenti alle parentesi non le mettono loro stessi - questa è la migliore prova della loro inutilità

Motivazione: