2 Stimmen

Erstellen Sie eine Funktion mit einer variablen, aber festen Anzahl von Argumenten

Gibt es eine Möglichkeit, eine Funktion mit einer variablen, aber festen Anzahl von Argumenten zu erstellen, d. h. keine vararg-Funktion? Ich meine so etwas wie das hier.

(bind n 42)
(lambda (x_1, x_2, ..., x_n) (do_something x_1 x_2 ... x_3))

Das einzige, was ich kenne, das neue Funktionen mit unterschiedlicher Argumentanzahl erstellt, ist 'curry', aber ich sehe nicht, wie man dieses Prinzip iteriert.

3voto

Eli Barzilay Punkte 28564

Verwenden Sie case-lambda in Scheme-Implementierungen, die es haben. Es sollte auch bei allen r6rs-Implementierungen verfügbar sein. Einige Implementierungen haben auch eine Möglichkeit, optionale Argumente zu definieren, anstatt manuelle Anpassungen an einem Rest-Argument vorzunehmen.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X