Függvények
Függvények bemutatása, leírása, működésük, szerepük.
Függvények
A függvények vagy ahogy mi szoktuk nevezni őket köznyelven, feladatok lényege, hogy különálló kis programokat írhassunk meg a nagy programból, mert a kis egyszerű feladatokban könnyebb megtalálni a hibát, és mert ezáltal sok esetben nem kell bizonyos kódrészeket többszőr leírni.
A függvények parancsa programozási nyelvenként változhat, pl PHP esetében a function, C, C++, C# stb. esetében a feladat típusát kell meghatározni: Csak végrehajt egy feladatot vagy vissza is ad valamilyen értéket? A típus után a feladat neve következik. Névnek mindig olyan nevet válasszunk amely tükrözi a feladatot, amit végre fog hajtani. Amennyiben olyan kis feladatokra bontjuk fel a végleges feladatot, hogy mindenik csak egy feladatot hajtson végre, a nevet könnyű megfelelően megválasztani.
class Objektum {
// Csak végrehajt egy feladatot és nem ad vissza semmilyen értéket
void Feladat()
{
}
}
A függvényekre is érvényes a háromféle típus: public, private, protected, ahogy a változók esetében is.
Amennyiben egy függvényt azon a változón keresztül szeretnénk meghívni (végrehajtani), amelybe az osztály példányát mentettük:
class Objektum {
public void Feladat()
{
}
}
// Példány létrehozása
Objektum variable = new Objektum();
variable->Feladat();
Amennyiben egy változóba mentünk egy példányt, a változónak azt is meg kell határozzuk, hogy milyen típusú példány lesz benne, mint amikor string, int, vagy egyéb típusokat mentünk bele. Ebben az esetben Objektum típusú osztály példányát mentjük el.
Ha a Feladat függvény nem publikus, kivülről nem elérhető.
A feladatok végrehajtása osztályon belül más feladatokban a this. segítségével vagy programozási nyelvtől függően lehet még this-> is.
class Objektum {
void Objektum()
{
// C, C++, C#
this.Feladat();
// vagy
// PHP
$this->Feladat()
}
public void Feladat()
{
}
}
Egy általunk megírt feladat, tartalmazhat változókat is, amelyek csak azon a feladaton belül fognak létezni, de hozzaférhetünk az osztályszintű változókhoz is, szintén this segítségével.
class Objektum {
// Osztályszintű változók létrehozása
public processor = "";
public owner = "";
void Objektum()
{
}
void Print()
{
// Függvény változó létrehozása
string date = "Today";
// Függvény változó
print date + " ";
// Osztály szintű változók
print this.processor + " " + this.owner;
}
}
Egy függvényből egy másik feladat végrehajtása szintén a this. paranccsal lehetséges:
class Objektum {
// Osztályszintű változók létrehozása
public processor = "";
public owner = "";
void Objektum()
{
this.Print();
}
void Print()
{
// Függvény változó létrehozása
string date = "Today";
// Függvény változó
print date + " ";
// Osztály szintű változók
print this.processor + " " + this.owner;
}
}
A függvények (feladatok) végrehajtásához néha szükségünk van egyéb értékekre is, tulajdonságokra, pl. amikor egy private változónak szeretnénk értéket beállítani egy függvény segítségével. Ezeket a szükséges értékeket a függvény létrehozásánál lehet bekérni az alábbi módon:
class Objektum {
// Osztályszintű változók létrehozása
private processor = "";
void Objektum()
{
}
public void Set_processor( string processor )
{
this.processor = processor;
}
}
Ebben az esetben a Set_processor nevű függvényünk a feladat végrehatjásához kér egy szöveg típusú értéket, egy processor nevet pl., amelyet beállít a this.processor értékének.
Objektum variable = new Objektum();
variable->Set_processor( "Intel" );
Igen, jól látható, hogy ugyanazon a néven van a két változó. Miért nem okoz ez gondot? Egyszerű, mert a this.processor az osztályszintű változóra vonatkozik, a processor meg csak a függvényen belül létezik, lokális változó, ezért nem ütköznek.
Ha több értékre is szükségünk van, vesszővel elválasztva sorolhatjuk fel egymás után, majd ugyanabban a sorrendben kell megadni az értékeket, szintén vesszővel elválasztva.
class Objektum {
// Osztályszintű változók létrehozása
private processor = "";
void Objektum()
{
}
public void Set_data( string processor, string owner )
{
this.processor = processor;
this.owner = owner;
}
}
És a feladat meghívása ebben az esetben:
Objektum variable = new Objektum();
variable->Set_data( "Intel", "Me" );
- Előző lecke: Változók és függvény típusok
Részletek
- Megtekintve: 170
- Haszontalannak jelölve: 0
- Hasznosnak jelölve: 0
- Értékelés: