Fehler, Irrtümer, Fragen - Seite 1136

 
A100:

Das stimmt, das muss so sein, denn wozu sonst die Angabe

anstelle von

Um mit Standardsammlungen zu arbeiten, darf eine Klasse keine const-Methoden haben, da nicht jede Klasse dies kann, aber jede Klasse kann Standardsammlungen verwenden. Die const-Beschränkung wird von einer externen Funktion auferlegt, und das ist ihr gutes Recht, aber es ist nicht erlaubt, Beschränkungen für die Architektur von Objekten Dritter aufzuerlegen.
 
TheXpert:
A* B::a = new A;

Konstruktor A ist nicht statisch, und der Versuch, ihn aufzurufen, wird natürlich einen Fehler verursachen:

'A' - non static methods and members cannot be used.
 
C-4:
Die Einschränkung const wird von der externen Funktion auferlegt, und es ist ihr Recht, aber sie hat kein Recht, die Architektur von Objekten Dritter einzuschränken.

Erklären Sie dann, welchen Sinn Sie mit der Angabe unter const - just to be - verbinden?

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

Erklären Sie dann, was Sie mit der Angabe unter const - just to be - bezwecken wollen?

Das ist eine Frage an die Entwickler der Standardbibliothek, nicht an mich. Wenn Sie Compare verwenden möchten, müssen Sie es leider entsprechend seiner Signatur umdefinieren, d. h. const verwenden. Andernfalls funktionieren die Standardalgorithmen zum Suchen, Sortieren und Einfügen nicht mit meinen Objekten. Aber meine Objekte enthalten kein const und können aufgrund ihrer Struktur kein const enthalten. Die Frage ist also, warum ich nicht die Standard-Speicher-Algorithmen verwenden kann, nur weil ich keinen Zugang zu dieser verdammten Konstante habe. !!!!
 
как начать работать в торговом терминале? я понятия просто не имею...
 
C-4:

Konstruktor A ist nicht statisch, und der Versuch, ihn aufzurufen, wird natürlich einen Fehler verursachen:

Dies ist eigentlich eine gültige Initialisierung. Statisch in einer Klasse hat nichts mit dem Objekt zu tun, das statisch ist.

Und die Tatsache, dass es sich nicht kompilieren lässt, sieht wirklich nach einem Fehler aus.

 

Fleder, danke für die Klarstellung! Führen die Autoren des Projekts ein Änderungsprotokoll für MetaEditor und die MQL-Sprache?

 
Tron_KZ:

Fleder, danke für die Klarstellung! Führen die Autoren des Projekts ein Änderungsprotokoll für MetaEditor und die MQL-Sprache?

Sehen Sie es sich hier an.
 
C-4:
Die Frage ist also, warum kann ich nicht die Standard-Speicher-Algorithmen verwenden, nur weil ich keinen Zugriff auf die verdammte Konstante habe? !!!!

Ankündigung

void f(const A* a)
bedeutet nicht, dass die Klasse A nur const-Methoden haben muss. Es bedeutet nur, dass in f() selbst nur const-Methoden aufgerufen werden können
 
TheXpert:

Dies ist eigentlich die richtige Initialisierung. Eine Statik in einer Klasse hat nichts mit einem Objekt zu tun, das eine Statik ist.

Und die Tatsache, dass es sich nicht kompilieren lässt, sieht wirklich nach einem Fehler aus.

Ich habe den Service Desk angeschrieben, hätte aber gerne eine schnellere Antwort von den Entwicklern.