Mi a különbség a függvény és a metódus között?
Ezt:
a = cos(x)
Ahol a cos() egy fügvény. Mint a matekban.
A metódus az objektumokon belüli eljárás vagy függvény.
"A metódus (avagy tagfüggvény) olyan eljárás vagy függvény, amelyet az objektumon belül deklarálunk mivel szorosan kapcsolódik az objektumhoz."
Forrás: [link]
Az eljárás (procedure) és a fügvény (function) között pedig az a különbség, amit a kérdés alá írtál a kifejtésbe Kérdező:
Az eljárásnak nincs visszatérési értéke, a függvénynek pedig van.
Tegyük tehát tisztába:
- Függvény: olyan alprogram, amely visszatérési értékkel rendelkezik (akárcsak a matematikai függvények, f(x) függvény valamilyen értéket ad vissza az x paraméterrel)
- Eljárás: olyan alprogram, amelynek nincs visszatérési értéke (így a hangsúly valamilyen feladat ellátásán van)
- Metódus: Olyan alprogram (legyen szó eljárásról, vagy függvényről), amely egy objektumon belül van deklarálva, az objektum működéséhez kapcsolódik. Pl. myObject->getName().
A függvény és az eljárás között nincs éles határ, a C-ben pl. az is függvény, aminek void a visszatérési típusa, vagyis nem ad vissza semmit. A tevékenységéhez sincs különösebb köze annak, hogy ad-e vissza értéket. (Pl. akár egy pointer paraméteren keresztül is adhat vissza eredményt, vagy a fő tevékenység mellett hibaüzenetet is visszaadhat.)
A metódus olyan függvény, ami egy adott osztályhoz készült, annak része, és leginkább az osztály adataival tud dolgozni (nem feltétlenül, de általában). Szóval olyan függvény, ami logikailag egy osztályhoz ill. annak példányaihoz kötődik.
"A függvény és az eljárás között nincs éles határ, a C-ben pl. az is függvény, aminek void a visszatérési típusa, vagyis nem ad vissza semmit."
Mert a C-ben nincs külön dedikált eljárás, legfeljebb void függvény. Attól még az általános terminológia nem változik.
"A tevékenységéhez sincs különösebb köze annak, hogy ad-e vissza értéket. (Pl. akár egy pointer paraméteren keresztül is adhat vissza eredményt, vagy a fő tevékenység mellett hibaüzenetet is visszaadhat.)"
A tevékenysége teljesen irreleváns, a válaszvonal az, hogy van-e visszatérési értéke, vagy nincs. Minden továbbit legfeljebb programozási konvenciók befolyásolnak, hogyan 'illik' működnie egy függvénynek, és egy eljárásnak.
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!