The C++ Compass
|
>FAQ<
|
Home Risorse Utilities Compilatori GUI Toolkits Libri Download FAQ Who am I |
Quali sono i vantaggi delle funzioni inline ?
La keyword inline serve a chiedere al compilatore di non generare una
normale chiamata di funzione, ma di inserire il codice della stessa laddove
avviene la chiamata.
Es. : #include <iostream> inline void Pippo() { std::cout << (1+2); } int main() { ... Pippo(); ... } Il compilatore trasforma la funzione int main() nella forma : int main() { ... std::cout << (1+2); ... } Il vantaggio è che si evita l'overhead imposto da una chimata di funzione, ma presenta lo svantaggio di aumentare le dimensioni dell'eseguibile e quindi le funzioni inline vanno utilizzate con attenzione e solo in punti chiave del codice. Perchè una funzione membro venga espansa inline non è necessario implementarla nella dichiarazione di classe; è possibile eseguire semplicemente una dichiarazione e poi implementarla fuori dalla dichiarazione di classe utilizzando esplicitamente la keyword inline : inline <ReturnType> <NameClass>::<MemberFunc>( ... ) { ... } Il vantaggio è quello di rendere più leggibile la dichiarazione di classe (cosa utile per rapide consultazioni dell'header) |
webmaster@thecppcompass.org |