Das entspricht dem Verhalten von C, C++ und ich glaube auch C#.
Parameternamen in der Funktionsdeklaration werden zwar akzeptiert aber ignoriert.
Deklarationen wie
void Test3(int a, int b);
oder
void Test3(int foo, int blub);
oder
void Test3(int, int);
werden fehlerfrei kompiliert. Letztlich sind die angegebenen Parameternamen aber ohne Bedeutung. Nur die Parametertypen müssen mit der Funktion übereinstimmen.
@lippmaje: Danke für die Info!
Nachdem ich mit Lisp und Pascal aufgewachsen bin war mir das neu, obwohl ich mich bereits seit Jahren mit MQL befasse.
Halte ich weiterhin für eine große Gefahrenquelle, besonders bei Programmänderungen.
@lippmaje: Danke für die Info!
Nachdem ich mit Lisp und Pascal aufgewachsen bin war mir das neu, obwohl ich mich bereits seit Jahren mit MQL befasse.
Halte ich weiterhin für eine große Gefahrenquelle, besonders bei Programmänderungen.
Also Otto, du überrascht mich immer wieder, jetzt hab ich doch mal nachsehen müssen was Lisp ist 😂😂😂😂
für alle anderen der next generation

- Freie Handelsapplikationen
- Über 8.000 Signale zum Kopieren
- Wirtschaftsnachrichten für die Lage an den Finanzmärkte
Sie stimmen der Website-Richtlinie und den Nutzungsbedingungen zu.
Der Compiler überprüft, auch schon in Vorgängerversionen, die Parameterdefinitionen der Funktionen nur sehr mangelhaft!
Das kann zu schweren Fehlern führen! Sind auch oft schwer zu entdecken.
Beispiel:
Ergebnis:
Auch die Überprüfung von Defaultwerten der Parameter ist äusserst mangelhaft.
-----------------------------------------------------------------------------------------------------
Einfach nur so, zu eurer Information.