Errori, bug, domande - pagina 1136

 
A100:

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.
 
TheXpert:
A* B::a = new A;

Il costruttore A non è statico, provare a chiamarlo causerà naturalmente un errore:

'A' - non static methods and members cannot be used.
 
C-4:
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?

void f(const A* a) //почему не void f(A* a)
 
A100:

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? !!!!
 
как начать работать в торговом терминале? я понятия просто не имею...
 
C-4:

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?

 
Tron_KZ:

Fleder, grazie per il chiarimento! Gli autori del progetto tengono un changelog su MetaEditor e il linguaggio MQL?

Controlla qui.
 
C-4:
Quindi la domanda è: perché non posso usare algoritmi di memorizzazione standard solo perché non posso accedere al dannato const? !!!!

Annuncio

void f(const A* a)
non significa che la classe A deve avere solo metodi const. Significa solo che in f() stesso solo i metodi const possono essere chiamati
 
TheXpert:

Questa è 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.

Hoscritto al Service Desk, ma vorrei una risposta più rapida dagli sviluppatori.