Skip to content
Puntatori a funzione

Image by geralt on Pixabay · Pixabay License

EntityQ2736305· pop 11· linked from 70 articles

Puntatori a funzione

Sign in to save

Also known as subroutine pointer, procedure pointer

pointer that points to a function

Wikidata facts

Show 1 more fact
Sources (1)

via Wikidata · CC0

Article · Italiano

Un puntatore a funzione è un tipo di puntatore in C, C++, D, e altri linguaggi di programmazioni stile C. Quando viene dereferenziato esso invoca una funzione, passandole zero o più argomenti come ad una funzione normale. Nei linguaggi di programmazione come il C, i puntatori a funzione possono essere usati per semplificare il codice fornendo un modo semplice per eseguire codice in base a parametri determinati a run-time. Similarmente ai puntatori a funzione esistono le funzioni oggetto o funtori, che possono essere usati in maniera simile. I funtori sono più potenti dei puntatori a funzione perché possono contenere i propri valori. Alcuni linguaggi "puramente" ad oggetti (come java) non supportano i puntatori a funzione.Qualcosa di simile può essere implementato in questi tipi di linguaggi, sebbene, usando le reference alle interfacce questo definisce una singola funzione membro. Linguaggi Microsoft .NET come il C# e il Visual Basic .NET implementano dei puntatoria funzione type safe con i delegate. In altri linguaggi che supportano le funzioni first-class, le funzioni sono trattate come dati e possono esserepassate, ritornate e create dinamicamente da altre funzioni, eliminando la necessità di puntatori a funzione. L'uso eccessivo di puntatori a funzione può produrre un rallentamento del codice sui processori moderni,perché la branch prediction può non essere in grado di prevedere quale ramo verrà preso (dipendeinfatti dal valore del puntatore a funzione a run-time), sebbene questo effetto possa essere compensato per ridurre le ricerche nelle tabelle di lookup.

Abstract from DBpedia / Wikipedia · CC BY-SA

Connections

Categories