Függvénymutatók - studopediya
Ahhoz, hogy megértsük, hogyan az index működik a funkció, meg kell szem előtt tartani a következő. Mivel a funkciók a forráskód összeállítása által rögzített szabályokat a C ++ nyelven átalakul egy objektumot, és állítsa be a belépési pontot, amely elérhető a függvényhívás.
A mutató egy függvényt a programban a következőképpen definiálható:
Függvény_típus (* imya_ pointer) (lista);
float (* pFUN) (int, int);
float * pFUN (int, int);,
a fordító elfogadja azt a függvény prototípus nevű pFUN két egész típusú érték, visszatérési értékek float típusú * mutatót. Más szóval, ez nem egy függvény pointer.
Mi határozza meg a szokásos módon történik az első félévben, a speciális funkciója két egész paramétert, amely visszaadja a valós értéket. Például, mivel az ilyen funkció lehet egy függvény, amely visszaadja az átlagos értéke a két egész szám:
float Aver (int x, int y)
Ezután fenti pFUN mutató egy olyan funkció lehet meghatározni a következő hozzárendelés:
float Res; Res = (* pFUN) (5, 2);
float * pFUN (int, int) = Aver;
Mint egy konkrét gyakorlati használatát mutató arra a funkcióra, tekintsük a következő példát.
1. példa (+) létrehozása funkció, Simpson képlet értékét számítja ki, a határozott integrál egy tetszőleges függvény egy változó. A működés ellenőrzése kiszámításához két integrál:
Integrál függvény kiszámítására határozott integrál egy tetszőleges függvény Simpson képletű paraméterei a következők: az integráció korlátozza a és b; képpontok számát, amelybe a [a, b], kotoroeobyavleno float típusú, hogy kizárja a végrehajtás átalakítás típusát algoritmus; egy mutató egy olyan funkciót, amely a határozott integrál kiszámítása.
float Integral (úszó, úszó, úszó, úszó (* Fun) (float));
// Két teszt funkciókat, amelyeknek szerves számítják.
// számolja az első integrál.
a = -1; b = 1; n = 100; I = Integrál (a, b, n, Function1); cout<
// kiszámítjuk a második integrál.
a = 0; b = 1; n = 100; I = Integrál (a, b, n, Function2); cout< érvényteleníti Read (int x) érvényteleníti hozzáfűzése (int x) 2. példa (+) A dinamikus tömb függvénymutatók. Az x = 0, 0,2, ..., 1 levezetni a táblázatot az értékek a három funkciót. // szövegek a két funkció. A harmadik funkció - szabványos cos (x). kettős MyExp (double x) kettős Myq (double x) / * Állapítsa, és hozzon létre egy sor mutató funkciók egy valós lehetőség. * / kettős (* (* fun)) (dupla) = új (dupla (* [n]) (dupla)); // hozzárendeli elemeket létrehozni egy sor funkció neveket. // Hurok változtatni x a (float x = 0; x<1; x+=0.2) / * Hurok kimeneti értékei az összes funkciót egy fix érték x. * / printf ( "% 20.6f", fun [j] (x));Kapcsolódó cikkek