Welkom op de Nederland Computer Kennisnetwerk!  
 
Zoeken computer kennis
Home Hardware Netwerken Programmering Software Computerstoring Besturingssysteem
Computer Kennis >> Programmering >> C /C + + Programming >> Content
Hoe te Functie Pointers gebruiken in C + +
Een functie pointer is in wezen slechts een pointer naar een functie . In talen zoals C + + , elke functie en variabele in een computerprogramma bestaat als een geheugenadres en een variabele de waarde van dat adres bevatten . Die variabele kan worden doorgegeven aan een callback , die vervolgens kan bellen met de functie die de variabele verwijst naar . Het kan ook worden gebruikt in een geval beheerder , of late binding van een lid functie . Door hun complexe syntax , zijn functiepointers vaak vermeden door programmeurs , maar kan worden gebruikt om vele krachtige taken goed te volbrengen. Wat je nodig hebt
C + + compiler
Toon Meer Aanwijzingen
1

Schrijf een C + + -programma . Dit is het programma waarin u een functie pointer te gebruiken . Kopen van 2

Definieer een functie pointer . U kunt dit een van de verschillende manieren doen . Verklaren een functie, zoals :

leegte doSomething
( int data ) ;

en later verklaren een pointer naar het. Of , kunt u een functie als een pointer verklaren :

nietig
( * doSomething ) ( int ) ;

Ten slotte kunt u verklaren een typedef , maak dan een variabele van dat type < br .

typedef void > ( * voidTakingInt ) ( int ) ;

U kunt nu gebruik maken van " voidTakingInt " als een type :

leegte doSomething
( int data ) ; voidTakingInt fun_ptr = & doSomething ; < br >
3

Verklaar iets dat de functie pointer gebruikt . Dat zal vaak iets dat de functie pointer gebruikt als callback functie , zodat wanneer een bepaalde gebeurtenis voordoet , de functie werkt de functie . Een voorbeeld is een file -loading functie die een callback functie neemt om de voortgang aan te geven .
4

Roep de functie van de aanwijzer naar het. Dit zou moeten gebeuren vanuit de functie die u schreef dat een functie pointer als parameter accepteert :

leegte doSomething
( int data ) { }

nietig callAnotherFunction (void ( * otherFunction ) op Twitter ( int ) ) {

( * otherFunction ) ( 3 ) ;

}

int main
( int argc , char * argv [ ] ) {

callAnotherFunction
( & doSomething ) return 0;

}

Previous: Next:
  C /C + + Programming
·Hoe maak je een CPP Executable…
·Hoe te lezen Hex nummer C + + 
·Hoe maak je een dynamische Str…
·Hoe te compileren en uitvoeren…
·Hoe naar Master C Pointers 
·Hoe kan ik een string in C Lee…
·De voordelen van de C + + Herh…
·Hoe kan ik een programma in C …
·Hoe om uw eigen Game Engine St…
  Related Articles
Hoe maak je een Combo Box Maak in Visual…
Hoe maak je een Check Box Maak in Visual…
Hoe maak je een tekstvak maken in Visual…
Hoe maak je een optie Box in Visual Basi…
Hoe maak je een schijf keuzelijst in Vis…
Hoe kan ik een keuzelijst maken in Visua…
Hoe kan ik een Picture Box Maak in Visua…
Hoe een bestand keuzelijst Maak in Visua…
Hoe kan ik een afbeelding Box Maak in Vi…
  Programmering Articles
·Hoe kan ik een Safari browser Detect in …
·Hoe maak je een JavaScript array initial…
·Hoe te doen Toevoeging van variabelen in…
·Hoe om tekst te wissen in Python 
·Hoe je tekst markeren in een tekstvak in…
·Hoe kan ik PHP code Debug in VS2008 
·Terugbellen Methoden 
·Hoe te Column aliassen opmaken in MySQL 
·Hoe maak je een Jar Maak Eclipse 
Copyright © Computer Kennis http://www.nldit.com