Was bedeutet es, wenn ein Argument für eine Funktion als Dummy-Argument bezeichnet wird ? Ich bin diesem Begriff außerhalb von Fortran nicht begegnet. Ist er ein allgemeiner Begriff in der Informatik? Was wären Beispiele für Argumente, die als Dummy übergeben und nicht als Dummy übergeben werden?
Ich habe diese Definition gefunden , von der ich nicht sicher bin, ob ich sie verstehe, aber es klingt so, als ob ein Dummy-Argument eine Variable ist, die als Referenz übergeben wird. In diesem Fall sind in Fortran alle Variablen Dummy-Variablen? (verwirrt)
Bearbeiten: Ich bin gerade auf den folgenden Aufsatz gestoßen, der mir geholfen hat, Fortrans Argument / Funktion, die Teminologie aufruft , besser zu verstehen: Dortor Fortran: Ich bin wegen eines Arguments hierher gekommen
Antworten:
"Dummy" als "unbenutzt"
Im Allgemeinen (nicht in Fortran) ist ein Dummy-Argument ein Argument, das vom Hauptteil der Funktion nicht verwendet wird.
Zum Beispiel ist in der folgenden Funktion
z
ein Dummy-Argument, aberx
undy
sind nicht.Sie können aus mehreren Gründen verwendet werden:
Abhängig von einem anderen Argument oder einer Konfiguration wird das Argument verwendet (kein Dummy) und manchmal auch nicht (Dummy), aber die Programmiereinstellung schreibt vor, dass ein Argument trotzdem übergeben wird. In diesem Fall können Sie normalerweise alles an die Funktion übergeben, dh
NULL
oder0
, abhängig von der Einstellung;Das Argument wird nicht mehr benötigt, aber Sie müssen aus Gründen der Abwärtskompatibilität eines angeben.
Die Funktion akzeptiert kein Argument (sie kann als Prozedur bezeichnet werden), aber die Einstellung legt fest, dass mindestens ein Argument angegeben wird. Sie finden dies in unreinen funktionalen Programmiersprachen, aber im Allgemeinen wird es nicht als "Dummy" bezeichnet, da der Typ (
unit
in ocaml ) dies vorschlägt."Dummy" in Fortran und Pascal
In Fortran und Pascal, und wahrscheinlich in Ihrem Fall, gibt es eine dunkelere Vorstellung von Dummy-Argumenten für übergebene Objekte , die ich nicht verstanden habe. Es scheint jedoch mehr um die Spezifikation als um das eigentliche Verfahren zur Übergabe von Argumenten zu gehen. (Einige Erklärungen: Link 1 mit beiden Sprachen , Link 2 auf Französisch ).
Ich weiß nicht, ob dieser Begriff noch verwendet wird.
"Dummy" als "gebunden"
Ich würde diese Terminologie auf keinen Fall empfehlen, aber "Dummy-Variable" kann "gebundene Variable" bedeuten, aber dieser Begriff ist eher eine Sache der Mathematik und Informatik.
quelle
In fortran ist ein Dummy- Argument das, was andere Sprachen als formales Argument bezeichnen . Die Dummy-Argumente sind also die Liste der Argumente in der Funktions- (oder Unterprogramm-) Definition.
Die tatsächlichen Argumente sind die Liste der Argumente in der aufrufenden Liste an der Stelle im Quellcode, an der eine Funktion aufgerufen wird (dh verwendet wird).
quelle
Eine Funktion ist gut definiert als: Beziehung zwischen einer Reihe von Eingaben und einer Reihe von zulässigen Ausgängen . Eine Dummy-Variable wäre eine Eingabe, die keinen Einfluss auf die Ausgabe hat.
In "C" nimmt die Zeitfunktion einen Zeiger auf ein time_t-Objekt als Eingabe. Da dieser Zeiger nur zum Abrufen der Ausgabe verwendet wird, kann er als "Dummy-Variable" betrachtet werden.
quelle
Ein Dummy-Argument ist eigentlich ein Argument in einer Funktion, das nicht in der Funktion verwendet wird, sondern im Funktionsausdruck ersetzt wird, wenn darauf verwiesen wird
quelle