Programozási alapismeretek
Függvények
Tartalom
Függvények értelme
Függvény vs. eljárás
Specifikációban és algoritmusban
Kódban
További linkek
Források
Függvények értelme
Függvényeket nagyon leegyszerűsítve azért használunk, mert lusták vagyunk.
Van egy kód ami pl. öt helyen olvas be egy-egy számot bemenet ellenőrzéssel és hibaüzenettel. Ahelyett, hogy írnánk 5 db do while ciklust, írunk egy beolvasó függvényt, amit 5 helyen meghívunk, különböző paraméterekkel (~eseti adatokkal)
Máris ötödakkor a kódunk, mint amúgy lenne.
Függvény vs. eljárás
Az eljárások egy olyan magyar nyelvű megkülönböztetés, ami (egy kissé fölösleges) logikai szétbontás.
- Függvény: van visszatérési érték
- Eljárás: nincs visszatérési érték
Specifikációban és algoritmusban
Kódban
namespace projekt_neve
{
internal class Program
{
// Függvények a MAIN-EN KÍVÜL HELYEZKEDNEK EL!!!
static T3 Fv_neve(T1 p1, T2 p2)
{
T3 valami; // helyi (lokális) változó
// ... ...
return valami; // !! return-ölünk egy a static után megadott típusú (jelen esetben T3) változót
}
static void Elj_neve(ref T1 p1, T2 p2) // "ref" esetén a megadott változót közvetlenül módosít(hat)ja az eljárás
{ // "ref" helyett "out" esetén a megadott változót közvetlenül módosítania kell az eljárásnak
// ... ... // !! tömb és mátrix esetén "ref" nélkül is közvetlenül hivatkozik a tömbre, vagyis ha az eljáráson/függvények belül módosítod, akkor az eredeti tömb/mátrix is módosul
// ... ...
}
static void Main(string[] args)
{
T1 v1 = //...;
T2 v2 = //...;
T3 valtozo = Fv_neve(v1, v2); // valahova "érkezik" a visszatérési érték, pl. elmentjük egy változóba
Elj_neve(v1, v2;)
}
}
}
FONTOS: Nem kaphatnak azonos nevet változók, függvények (ahogy két változó sem lehet azonos nevű)!
További linkek
Gyakran használat függvények (C#) ELTE specifikáció szerkesztőjeForrások
Horváth Győző, Horváth Gyula, Szlávi Péter, Törley Gábor: Programozási alapismeretek 5. előadás (ppt) (előadó: Törley Gábor)