Mi az aktuális paraméter
1. Mi a szerepe? Függvénydefiníciónak. A használatának előnyei funkciók
Írásakor a program a közepes és nagyfokú összetettsége szükség van bennük felosztása egymástól. Felosztása egy nagy program kisebb darabokra, hogy csökkentse a hibák kockázatát, javítja az olvashatóságot a kód miatt strukturálása.
Továbbá, ha egy kis kódot többször (vagy hasonló jelentésű), célszerű szervezni, mint egy függvény, ami aztán lehet nevezni többször használja a nevét. Tehát van egy memória megtakarítás, csökken a program forráskódját, stb ..
Funkció - ez a program része, amely az alábbi jellemzők vagy tulajdonságok:
- van logikailag független része a programnak;
- Ez egy név, amely alapján a hívást a funkció (a funkció). A függvény neve meg kell felelnie a létrehozása C ++ azonosítók;
- tartalmazhat egy listát a paraméterek, amelyek a neki továbbított feldolgozásra vagy felhasználásra. Ha a függvény nem tartalmaz az opciók listáját, akkor ez a funkció az úgynevezett paraméterek nélkül;
- visszatérhet a (nem feltétlenül) egy bizonyos értéket. Ha a függvény nem ad vissza semmilyen értéket, majd adja meg a kulcsszót semmis;
- Megvan a saját kódját, amely között található a fogszabályozó <>. A kód megoldja a problémát okozta ezt a funkciót. A kód programon belül kapcsos zárójelek, az úgynevezett „test funkcióit”.
Funkcióinak használata a programokban a következő előnyökkel jár:
- kompakt szervezése a program ideális hívó kód a neve, amely a program többször fordul elő (ismételt);
- Memória megtakarítás, mérete és forrása a végrehajtó kód stb.;
- csökkenti a hibák kockázatát a nagy készletek kódok;
- javítása olvashatóságát kódot.
2. Mi az általános formája a függvény leírása?
Az általános formája a függvény leírása a következő:
3. Példák a leírás és a funkciók használatának amelyek nem adnak vissza értéket
Ha a függvény nem ad vissza értéket, akkor meg kell kezdeni a kulcsszó érvénytelen.
1. példa MyFunc1 () függvény paraméterek nélkül, amely nem ad vissza értéket.
Ha a szervezet egy osztály vagy modul leírja a funkciót:
akkor ezt a funkciót az alábbiak szerint:
2. példa MyFuncMult2 () függvény. amely úgy egy egész paramétert és nem ad vissza értéket. A funkció szorzatából a paraméter 2, és kiadja az eredményt alkotnak Label1 kontroll.
Egy funkció egy másik kód:
3. példa Egy funkció, amely kap két kettős típusú paraméter. Ez a termék, és megjeleníti azt a formát, a Label1 ellenőrzés.
Egy funkció egy másik kód:
4. Példák a leírás és a funkciók használatának, ami kap egy-egy paraméter
1. példa Egy funkció, amely úgy egy egész szám paramétert, megszorozza 5. és visszaadja az eredményt. A funkció nem hajtja végre a kimeneti eredményhez.
Egy funkció egy másik kód
2. példa A függvény értéket számító y = jel (x). által meghatározott szabály:
Egy funkció egy másik kód:
5. Példák leíró használatát és funkcióit, amelyek kap két vagy több paraméter
1. példa MaxFloat () függvény. Befogadó 2 paraméter float típusú, és visszaadja a legnagyobb közülük.
Meg kell jegyezni, hogy ez a funkció 2-szeres megtérülési találkozott.
Hívjon MaxFloat () függvény egy másik kód:
2. példa MaxInt3 () függvény. ami a maximális érték a három egész szám.
Egy funkció egy másik kód
6. Melyek a különböző módon átadni paramétereket a funkció? példa
Általában két módszer van továbbítására a paramétereket a funkció:
Bemutató myFunction () függvény hívás egy másik kód:
Mint látható az eredmény, az érték egy nem változik. Egy változó átadott myFunction () függvény az átviteli értékeket (az első paraméter).
7. Mi a formális és aktuális paraméterek a funkciót? példa
A formális paraméterek - ez változó, figyelembe értéke érvek (paraméterek) funkciót. Ha a funkció több érv (paraméterek), típusuk és a neveket vesszővel elválasztva. " ”.
Példa. MyAbs () függvény. megállapítás egységnek az egyik az X formális paraméter.
Egy funkció egy másik kód (másik funkció)
Amikor a funkció az úgynevezett másik kód van egy tényleges érv. Ebben a példában az aktuális paraméter egy változó és egy konstans 23.
Amikor a funkció az úgynevezett tényleges paramétereket átmásolja egy speciális memória hely a veremben (stack - része a memória). Ezek a memória sejtek félre a formális paraméterek. Így a formális paraméterek (használata révén egy köteg) érték az aktuális paraméterek.
Mivel az aktuális paramétereket átmásolja a verem, a változó a formális paraméterek függvényében test nem változik az értéke az aktuális paraméterek (hiszen egy másolatot az aktuális paraméterek).
8. Mire terjed a formális paraméterek a funkciót? példa
FIELD láthatósági függvény formális paraméterek meghatározott határok működnek test, amelyben le van írva. Az alábbi példában, a formális paraméter n értéke típusának a határokat zárójelek <> .
Példa. A funkció, mely kiszámítja az faktoriálisát n szám.
Egy funkció egy másik kód (másik funkció):
9. Mi a függvény prototípus? példa
A függvény prototípus lehetővé teszi, hogy elkerüljék a hibákat, ha át aktuális paramétereket a formális paraméterek.
Ha nincs függvény prototípusa, a fordító feltételezi, hogy milyen típusú formális paraméterek megegyezik a típus az aktuális paraméterek. Ez ahhoz vezethet, hogy a hiba.
A függvény prototípusa ad a fordító információt típusú formális paraméterek függvényében. Ez azért fontos, azokban az esetekben, ahol a típus az aktuális paraméterek nem egyeznek a fajta formális paraméterek.
Példa. Adott egy függvény Div (). 2, amely befogadja száma típus long int, és visszaadja az eredményt a osztás számokat. A funkció nem prototípus (lásd. Alább).
Ha írsz a másik programban kód:
azaz a kockázat téves eredményt változó c. Ez annak a ténynek köszönhető, hogy a funkció az úgynevezett fordítóprogram nem információt, hogy milyen típusú a formális paraméter (x. Y), amelyeket a funkciót. A fordító úgy véli, hogy a típusú paraméterek a funkció ugyanaz, mint a típusú az aktuális paraméterek (változó a. B), azaz, int. Azonban Div () függvény a long int típusú paramétereket. amely nagy memóriakapacitás, mint egy int. Ezért előfordulhat, hogy a torzítás értékek.
Annak elkerülése érdekében, az ilyen hiba ajánlott, így a függvény prototípus. Ebben az esetben a prototípus formájában:
A prototípus fel kell tüntetni:
- vissza típusú funkció;
- A függvény neve;
- az érveket (paraméterek) funkciót.
Ha a funkció leírása az osztályban, és hívja a módszerek ebben az osztályban, akkor az ilyen hibák nem. Ez annak a ténynek köszönhető, hogy egy osztály egy függvény prototípusa a mindenki által ismert módszerekkel egy osztály.