Errori, bug, domande - pagina 2831

 
A100:

Sei di nuovo fuori tema - non c'è differenza. In entrambi i casi: o non dovrebbe esserci nessun errore - o dovrebbe esserci (come in C++). Ecco l'esempio (3), dove f è sovrascritto dopo, come nel caso (2), ma a differenza di (2) - errore di compilazione

Scusa, non è il tuo livello. ma l'incapsulamento più rigoroso e non sensato secondo me. non c o python.

 
Combiniamo tutto in un esempio:
class B {
public:
        B( int ) {}
};
class A {
        int f( int ) { return 0; }
        void g1()    { B f = f( 1 );  } //(1) нормально
        void g2()    { B f(  f( 1 )); } //(2) Error: '1' - some operator expected
};
Ora TUTTO è uguale, e la domanda è la stessa: qual è la differenza tra (1) e (2)?
 
A100:
Uniamo tutto in un esempio: ora tutto è uguale, e la domanda è la stessa: qual è la differenza tra (1) e (2)?

Non ho la minima idea di cosa tu stia parlando, ma la differenza è FANTASTICA )))) Assegnazione -> argomento. Forse mi sbaglio ))))

 
Сергей Таболин:

Non ho la minima idea di cosa tu stia parlando, ma la differenza è FANTASTICA )))) Assegnazione -> argomento. Forse mi sbaglio ))))

Se la differenza è evidente per te, allora spiega perché c'è un errore di compilazione in un caso e non nell'altro. O puoi distinguere la differenza solo dall'apparenza e non dal significato? Allora questo è il livello della rivista Murzilka - "trovare 10 differenze".

 
A100:

Se la differenza è evidente per te, allora spiega perché c'è un errore di compilazione in un caso e non nell'altro. O puoi distinguere la differenza solo dall'apparenza, ma non dal significato? Allora questo è il livello della rivista Murzilka - "trovare 10 differenze".

Proprio così )))))))

E posso fare un'altra domanda da un profano? Qual è lo scopo di tutto questo? Qual è il punto sacramentale? Stai cercando questi "bug" di proposito? O senza uno di questi costrutti, tutta la tua vita è uno spreco?

 
Сергей Таболин:

E posso fare un'altra domanda da un profano? Qual è lo scopo di tutto questo? Qual è il punto sacramentale? Cercate questi "bug" di proposito? O senza nessuno di questi costrutti - tutta la vita è uno spreco?

Per tali domande (in questo thread) è il momento di vietare

 

Basta che si tratti di errori. C'è qualche soluzione per la DLL e l'arresto manuale del tester?

Voglio dire, se si ferma il tester/ottimizzazione nel processo, poi per ricominciare, bisogna uccidere metatester64 manualmente (e in caso di fattoria - c'è un ulteriore inferno), perché il processo lascia la DLL caricata, e per iniziare il nuovo test copia di nuovo la DLL nella sandbox, ma apparentemente, Windows non permette di sovrascrivere la DLL aperta e scrivere l'errore.

E se gli sviluppatori passano di qui, perché non aggiungere 4 righe al codice del tester, in modo che cerchi di ottenere l'handle della libreria, e se è caricata - scaricarla prima di copiare di nuovo? È un casino ;)

 

come scrivere l'ora locale corrente in uno dei campi della tabella dal tester di strategia in SQLite?

Googlato

SELECT datetime('now');

Vorrei inviare una query al database

Voglio scrivere i passaggi di ottimizzazione nel database, mi manca davvero il tempo locale - ho dimenticato quando ho esaminato quali parametri EA

UPD:

Trovato una soluzione, abbastanza datetime() nel campo di prova per scrivere

INSERT INTO "tst"("Field1") VALUES (datetime('now','localtime'));
 
Igor Makanu:

come scrivere l'ora locale corrente in uno dei campi della tabella dal tester di strategia in SQLite?

Googlato

Vorrei inviare una query al database

Voglio scrivere i passaggi di ottimizzazione nel database, mi manca davvero il tempo locale - ho dimenticato quando ho esaminato quali parametri EA

UPD:

Soluzione trovata, abbastanza datetime() nel campo di prova per scrivere

CREATE TABLE "foo" (

   "stamp" datetime default CURRENT_TIMESTAMP,

    --- прочие поля

);

dovrebbe funzionare - il timbro sarà impostato alla creazione del record all'ora locale corrente.

 
A100:
Uniamo tutto in un esempio: ora tutto è uguale e la domanda è la stessa: qual è la differenza tra (1) e (2)?

Beh, è ovvio che il problema è molto probabilmente lo stesso nome della funzione - è una valutazione dell'aspetto, per così dire, che anticipa le peculiarità del linguaggio))) Beh, dovrebbe funzionare così..... immaginare di trovare un tale errore in una tonnellata di codice.

Ho controllato - sì, tutto è corretto. Il compilatore sta cercando di chiamare il costruttore all'interno del costruttore e non la funzione per la seconda volta.

Nel secondo caso, si scopre che il compilatore per qualche motivo si riserva la sintassi "f(" - proprio come "funzione" per chiamare il costruttore.

class B {
public:
        B( int ) {}
};
class A {
        int f( int ) { return 0; }
        void g1()    { B f = f( 1 );  } //(1) нормально
        void g2()    { B f(  this.f( 1 )); } //(2) Прекрасно работает
};


Anche se non è esattamente così))) ma...

È ancora più probabile che mentre aspetta che la parentesi della classe ritorni alla sintassi "f("... la incontra alla funzione f(....) e la chiude come classe (cioè nel nostro caso inizializza completamente l'oggetto B invece di chiamare la funzione)... poi risolve il segmento rimanente cercando di convertire la classe in una variabile

sembra che il tuo codice cerchi di capire come


class B {
public:
        B( int ) {}
};
class A {
        int f( int ) { return 0; }
        void g1()    { B f = f( 1 );  } //(1) нормально
        void g2()    { B a(1);  B f (a(1)); } //(2) Error: '1' - some operator expected
};
Быстрое погружение в MQL5
Быстрое погружение в MQL5
  • www.mql5.com
Есть множество причин, по которым вы решили изучать современный язык программирования торговых стратегий MQL5, и мы только приветствуем это! Старожилы легко ориентируются как в самой документации по языку, так и в статьях и множестве сервисов, которые здесь представлены. Но если вы только открыли для себя клиентский терминал MetaTrader 5, то в...