Für den der das Lua Tutorial schreibt

Dieses Thema Für den der das Lua Tutorial schreibt im Forum "Windows XP Forum" wurde erstellt von Robertico, 1. Okt. 2005.

Thema: Für den der das Lua Tutorial schreibt Vielleicht hier zu verwenden nach Umschreibung. Funktionen Eine Funktion ist ein Stück zusammengehörenden Codes,...

  1. Vielleicht hier zu verwenden nach Umschreibung.


    Funktionen

    Eine Funktion ist ein Stück zusammengehörenden Codes, der es erlaubt, eine bestimmte Aufgabe in wiederverwendbarer Art umzusetzen. Eine Funktion enthält normalerweise thematisch zusammengehörigen Code. Es können beliebig viele Parameter an eine Funktion übergeben, und beliebig viele Funktionswerte von ihr zurückgegeben werden.

    Funktionen werden in DEdK normalerweise verwendet, um den Code übersichtlicher zu gestalten. Um Aktionen, die aus sehr vielen Code Zeilen bestehen, unter einem Namen zusammenzufassen.

    Hier ein einfaches Beispiel:

    function SagHallo()
    print( Hallo );
    end

    Die Funktion heisst SagHallo und benötigt keinerlei Parameter.
    Sie ruft eine weitere Funktion (print) auf um ?Hallo? auszugeben.
    Es werden keinerlei Werte zurückgegeben.
    Der Aufruf im Code erfolgt also einfach mit ?SagHallo()?.
    Der in einer Funktion enthaltene Code wird erst dann ausgeführt, wenn die Funktion aufgerufen wurde. Egal an welcher Stelle die Funktion im Code steht.

    Ein leicht erweitertes Beispiel

    function AntwortBitte()
    print( Antwort kommt gleich... );
    return 42;
    end

    Diese Funktion gibt, wenn sie aufgerufen wird, den Text ?Antwort kommt gleich...? aus, und liefert die Zahl 42 zurück. Ruft man diese Funktion so auf: ?AntwortBitte()? dann verfällt der Rückgabewert, da er nicht weiter verwendet wird. Benötigt man den Wert, kann man ihn sich in einer Variable merken: ?antwort = AntwortBitte()?. Somit wird ?antwort? nach dem Aufruf die Zahl 42 enthalten.

    Nun ein Beispiel mit Parametern:

    function Addiere( _zahl1, _zahl2 )
    return _zahl1 + _zahl2;
    end

    Die Funktion erwartet nun zwei Parameter, _zahl1 und _zahl2. Die Summe dieser Parameter wird zurückgegeben. Der Unterstrich vor dem Variablennamen ist nicht notwendig. Er kann jedoch verwendet werden um Funktionsparameter von anderen Variablen abzugrenzen.
    Die Zeile print( Addiere( 17, 4 ) ) ruft zunächst ?Addiere? mit 17 und 4 auf. Die Funktion gibt 21 zurück. Dieses Ergebnis wird direkt an print weitergegeben und somit auf dem Bildschirm ausgegeben.

    Funktionen sollten immer nacheinander deklariert werden:

    function Nummer1( _nenParameter )
    MachWas( _nenParameter );
    end

    function Nummer2()
    return zzzZZ;
    end

    Es gibt keine Fehlermeldung, wenn man Funktionen ineinander deklariert. Dies sollte man allerdings nicht machen, da der Code dann höchstwahrscheinlich nicht mehr das macht was man möchte:

    function Nummer1( _nenParameter )
    MachWas( _nenParameter );
    function Nummer2()
    return zzzZZ;
    end
    end

    Weiterhin muss jeder Funktionsname einzigartig sein. Hat man zwei Funktionen mit gleichem Namen, wird die neuere (weiter unten im Code stehende) die ältere überschreiben. Dies ist genau wie bei Variablen:

    meinWert = 17;
    meinWert = 4;

    Nun enthält ?meinWert? 4, da einem identischen Namen ein anderer Wert zugewiesen wurde.

    Das Verhalten bei Funktionen ist identisch, da Funktionen auch nur Werte sind, die einer Variablen zugewiesen wurden. Diese gültige alternative Schreibweise des ersten Beispiels verdeutlicht es:

    SagHallo = function() print( Hallo ); end

    Der Variable ?SagHallo? wird eine Funktion zugewiesen die ?Hallo? ausgibt. Die Funktionalität ist exakt identisch mit der im ersten Beispiel. Es wurde nur eine andere Schreibweise gewählt um die Zuweisung zu verdeutlichen. Da es eine Variable ist, kann man damit auch alles machen, was man normalerweise mit Variablen macht.

    AuchHallo = SagHallo;
    AuchHallo();

    Hier wird der Variable ?AuchHallo? zunächst der Wert (die Funktion!) von ?SagHallo? zugewiesen. ?SagHallo? wird nicht ausgeführt (es stehen keine Klammern für einen Aufruf dahinter).
    Anschliessend wird ?AuchHallo? ausgeführt, da es die gleiche Funktion wie ?SagHallo? enthält wird also anschliessend ?Hallo? auf dem Schirm ausgegeben.
    Dieses Wissen ist später nützlich um ?Finished? Funktionen in Briefings zu verstehen.
     
Die Seite wird geladen...

Für den der das Lua Tutorial schreibt - Ähnliche Themen

Forum Datum
gute Einsteigertutorials für C# 2008? Windows XP Forum 25. Okt. 2009
emfehltung für anfänger tutorial gesucht Linux & Andere 22. Mai 2003
[S]: Tutorials für PHP Link/Bücher-Empfehlungen & -Gesuche 29. Apr. 2002
[S:] Mactutorial für Anfänger Link/Bücher-Empfehlungen & -Gesuche 26. Juni 2002
Software für Partition Verwaltung Software: Empfehlungen, Gesuche & Problemlösungen 29. Nov. 2016