Parametrisierte Funktionen
Spezialisieren Sie eine Funktion mit [Klammer]-Parametern.
Parametrisierte Funktionen ist eine kostenlose Mojo Academy-Lektion auf CoddyKit. Dies ist Lektion 2 von 4. Du kannst die komplette Lektion unten kostenlos lesen – dann übst du sie direkt im Browser mit einem integrierten Code-Editor und einem KI-Tutor rund um die Uhr. Sie ist Teil des Mojo Academy-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der Mojo Academy-Kurs umfasst insgesamt 4 Lektionen.
Funktionen mit einem Parameter
Eine parametrisierte Funktion übernimmt einen Wert zur Compile-Zeit in eckigen Klammern. Dadurch kann sich eine einzige Definition anpassen, bevor das Programm ausgeführt wird. ⚙️
fn repeat[count: Int](msg: String):
for i in range(count):
print(msg)Die Liste in eckigen Klammern
Setzen Sie Ihre Parameter direkt nach dem Funktionsnamen in eckige Klammern und anschließend Ihre normalen Argumente in runde Klammern.
fn scale[factor: Int](x: Int) -> Int:
return x * factorAufruf mit einem Parameter
Beim Aufruf setzen Sie eine Konstante in die eckigen Klammern und übergeben die Laufzeit-Argumente wie gewohnt in runden Klammern.
var y = scale[10](4)Jeder Wert erzeugt eine Version
Mojo erstellt für jeden verwendeten Parameterwert eine neue spezialisierte Kopie der Funktion, die genau auf diese Konstante zugeschnitten ist.
Typparameter
Ein Parameter kann sogar ein Typ sein. So schreiben Sie eine Funktion, die mit Int, Float oder jedem von Ihnen gewählten Typ funktioniert.
fn first[T: AnyType](value: T) -> T:
return valueGenerisch mit Traits
Schränken Sie einen Typparameter mit einem Trait ein, damit der Funktionsrumpf sicher die Methoden verwenden kann, die dieser Trait jedem konformen Typ zusichert.
fn show[T: Stringable](value: T):
print(String(value))Der Compiler fügt ihn inline ein
Da der Parameter eine Konstante ist, kann der Compiler ihn direkt in den Code integrieren und dadurch häufig Schleifen oder Verzweigungen vollständig entfernen.
Parameter und Argumente kombinieren
Eine Funktion kann beides annehmen: einen Parameter zur Compilezeit für die Struktur und Laufzeitargumente für die tatsächlich verarbeiteten Daten.
fn fill[n: Int](value: Int):
for i in range(n):
print(value)Abgeleitete Parameter
Manchmal kann Mojo einen Parameter aus den Argumenten ableiten. Dadurch müssen Sie weniger schreiben und der Compiler ergänzt den Rest für Sie.
Warum es schnell bleibt
Jede Spezialisierung ist eine eigene optimierte Funktion. Für den Parameter entstehen keine Laufzeitkosten – das ist der Kern der Geschwindigkeit von Mojo.
Eine Quelle, viele Builds
Sie pflegen nur eine übersichtliche Definition, während der Compiler im Hintergrund viele schnelle, spezialisierte Builds erzeugt.
Kurze Überprüfung
Rufen Sie sich ins Gedächtnis, wie eine Funktion mit Parametern geschrieben wird.
Zusammenfassung
Sie haben Funktionen mit Parametern geschrieben: In eckigen Klammern stehen Compilezeitwerte, der Compiler spezialisiert jede Version und aus einer Quelle entstehen viele schnelle Builds. 🎯
Häufig gestellte Fragen
Ist die Lektion „Parametrisierte Funktionen“ kostenlos?
Ja — der vollständige Text von „Parametrisierte Funktionen“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des Mojo Academy-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der Mojo Academy-Kurs umfasst insgesamt 4 Lektionen.
Was lerne ich in „Parametrisierte Funktionen“?
Spezialisieren Sie eine Funktion mit [Klammer]-Parametern. Du übst Mojo Academy mit praktischem Code, den du direkt im Browser ausführst, und ein 24/7 KI-Tutor beantwortet deine Fragen während du die Lektion bearbeitest.
Brauche ich Erfahrung, um Mojo Academy zu starten?
Keine Vorkenntnisse erforderlich. Mojo Academy auf CoddyKit ist für Anfänger bis fortgeschrittene Lernende strukturiert, sodass du hier starten oder von Anfang an beginnen und in deinem eigenen Tempo voranschreiten kannst. Dies ist Lektion 2 von 4.
Wie lange dauert die Lektion „Parametrisierte Funktionen“?
Die meisten CoddyKit-Lektionen dauern etwa 5–10 Minuten. Jede ist kompakt und interaktiv, sodass du stetig Fortschritte machst und genau dort weitermachst, wo du aufgehört hast – im Web und in der App.
Kann ich in dieser Mojo Academy-Lektion Code schreiben und ausführen?
Ja. Jede Mojo Academy-Lektion enthält einen integrierten Code-Editor, sodass du echten Code direkt in deinem Browser schreibst und ausführst und sofort KI-Feedback erhältst — ohne lokale Einrichtung erforderlich.
Alle Lektionen in diesem Kurs
- Parameter und Argumente
- Parametrisierte Funktionen
- Parametrisierte Structs
- Warum Compile-Zeit Geschwindigkeit bringt