Esatto, deve essere così, altrimenti che senso ha specificare
invece di
Per lavorare con le collezioni standard, una classe non deve avere metodi const, perché non tutte le classi possono farlo, ma tutte le classi possono usare le collezioni standard. Il vincolo const è imposto da una funzione esterna ed è un suo diritto, ma non è permesso imporre vincoli all'architettura di oggetti terzi.
Spiega allora quale punto stai facendo specificando sotto const - solo per essere?
Questa è una domanda per gli sviluppatori della libreria standard, non per me. Sfortunatamente, se volete usare Compare, dovete ridefinirlo secondo la sua firma, cioè usare const. Altrimenti gli algoritmi standard di ricerca, ordinamento e incollaggio non funzioneranno con i miei oggetti. Ma i miei oggetti non contengono const e in virtù della loro struttura non possono contenere const. Quindi la domanda è: perché non posso usare algoritmi di memorizzazione standard solo perché non ho accesso a questo dannato cost? !!!!
Consenti l'uso dei cookie per accedere al sito MQL5.com.
Abilita le impostazioni necessarie nel browser, altrimenti non sarà possibile accedere.
Hai effettuato l'accesso. L'autenticazione a due fattori è stata disattivata. Configurala di nuovo e scansiona un nuovo codice QR, oppure continua con l'autenticazione a due fattori disattivata.
Esatto, deve essere così, altrimenti che senso ha specificare
invece di
A* B::a = new A;Il costruttore A non è statico, provare a chiamarlo causerà naturalmente un errore:
Il vincolo const è imposto dalla funzione esterna ed è un suo diritto, ma non ha il diritto di imporre vincoli all'architettura di oggetti terzi.
Spiega allora che senso hai messo specificando sotto const - solo per essere?
Spiega allora quale punto stai facendo specificando sotto const - solo per essere?
Il costruttore A non è statico, provare a chiamarlo causerà naturalmente un errore:
Questa è effettivamente un'inizializzazione valida. La statica in una classe non ha niente a che fare con l'oggetto che è statico.
E il fatto che non compili sembra davvero un bug.
Fleder, grazie per il chiarimento! Gli autori del progetto tengono un changelog su MetaEditor e il linguaggio MQL?
Fleder, grazie per il chiarimento! Gli autori del progetto tengono un changelog su MetaEditor e il linguaggio MQL?
Quindi la domanda è: perché non posso usare algoritmi di memorizzazione standard solo perché non posso accedere al dannato const? !!!!
Annuncio
non significa che la classe A deve avere solo metodi const. Significa solo che in f() stesso solo i metodi const possono essere chiamatiQuesta è effettivamente l'inizializzazione corretta. Uno statik in una classe non ha niente a che fare con un oggetto che è uno statik.
E il fatto che non compili sembra davvero un bug.