? I C og C + + og andre sprog, der tillader direkte adgang til computerens hukommelse , en pointer er en særlig form for værdi, der besidder en hukommelse adresse i stedet for direkte specificerede data. Funktion pointers peger på funktioner i hukommelsen i stedet for værdier. Funktion pointers kan bruges til at udføre deklarative - eller funktionel stil programmering teknikker i C eller C + + , sprog som stort set afgørende. Som en sidebemærkning understreger deklarativ - stil programmering fortæller computeren, hvad noget er , mens afgørende stil programmering understreger fortæller computeren, hvordan at gøre noget. Data Instrueret Programmering
Funktion pointers kan bruges til at implementere data Instrueret Programmering, som er en form for generisk programmering. I lægmandssprog giver generisk programmering funktioner til at behandle værdier vilkårlige typer . C og C + + -funktioner som standard kan kun behandle funktioner, der tidligere erklæret typer . For eksempel , en funktion " int-funktionen ( int ost , char bold )" skal returnere et heltal og tager kun et heltal og en karakter . Funktion pointers kan bruges til dynamisk afsendelse på de typer af argumenter.
Signal Processing stil programmering
Funktion pointers kan bruges til at implementere signalbehandling stil funktioner såsom kort og reducere. Det er funktioner , der tager en bruger -specificeret funktion og anvende dem til hvert element på en liste.
Højere Order Programmering
Højere orden programmering er en anden form programmering , der tillader indkapsle fælles " mønstre" i, hvad der er kendt som en højere orden funktion. Funktion pointers kan bruges til at generere højere orden funktioner.
Andre deklarative Teknikker
Funktion pointers kan bruges til at implementere mange andre deklarative programmering teknikker . Som et andet eksempel kan beredningsmetode implementeres ved hjælp af funktions pointere. Processen beredningsmetode er defineret som at tage en tidligere defineret funktion og returnere en ny funktion , der er den gamle funktion med nogle af sine anvendte argumenter.