Condividi tramite


Importazione ed esportazione di funzioni inline

Le funzioni importate possono essere definite come inline. L'effetto è approssimativamente uguale alla definizione di una funzione standard inline; le chiamate alla funzione vengono espanse nel codice inline, in modo analogo a una macro. Ciò è particolarmente utile come metodo per supportare le classi C++ in una DLL che potrebbe inline alcune delle funzioni membro per l'efficienza.

Una funzionalità di una funzione inline importata è che è possibile accettarne l'indirizzo in C++. Il compilatore restituisce l'indirizzo della copia della funzione inline che risiede nella DLL. Un'altra funzionalità delle funzioni inline importate è che è possibile inizializzare dati locali statici della funzione importata, a differenza dei dati importati globali.

Attenzione

È consigliabile prestare attenzione quando si forniscono funzioni inline importate perché possono creare la possibilità di conflitti di versione. Una funzione inline viene espansa nel codice dell'applicazione; pertanto, se successivamente si riscrive la funzione, non viene aggiornata a meno che l'applicazione stessa non venga ricompilata. In genere, le funzioni DLL possono essere aggiornate senza ricompilare le applicazioni che le usano.

Cosa vuoi fare?

Vedi anche

Importazione ed esportazione