4° Anno TEORIA 6. Programmazione ad oggetti: il linguaggio C++ | Page 10

Linkage

Linguaggio C ++: peculiarità – linkage

In C ++ ( ma anche in C ) l ' unità di compilazione è il file ma un programma può essere costituito da numerosi file sorgenti compilati separatamente e collegati insieme dal linker
Il linkage determina la porzione di programma nel quale un identificatore può essere referenziato ossia stabilisce il suo scope ( visibilità )
Se un identificatore è visibile in tutto il file sorgente in cui è dichiarato e la sua dichiarazione contiene lo specificatore di memorizzazione static si dice che ha linkage interno ossia è visibile solo all ' interno di quel file sorgente ma non altrove
Se un identificatore è visibile in tutto il file sorgente in cui è dichiarato ma non e ' dichiarato come static si dice che ha linkage esterno ossia è visibile da quel punto in tutto il resto del programma
Se la dichiarazione di un identificatore all ' interno di un blocco non contiene lo specificatore di classe di memorizzazione extern si dice che quell ' identificatore non ha nessun linkage ed è visibile solo all ' interno di quel blocco
N . B . se si vuole implementare una libreria di funzioni esportabili ( ossia richiamabili da ogni punto del programma ) dovranno avere linkage esterno mentre quelle realizzate per scopi interni ( quindi non esportabili ) linkage interno
Autore : Prof . Rio Chierego Aprile 2024