Ça c'est pour cacher la déclaration des fonctions pour l'utilisateur de la bibliothèque, ça ne change pas la visibilité des symboles dans la bibliothèque ce qui était l'idée originale de l'OP je pense.
Si le symbole est exporté, entête privé ou non l'utilisateur de la bibliothèque peut l'appeler et parfois c'est pas ce qu'on souhaite. Alors le visibility hidden est « utile » pour les bibliothèques dynamiques mais pas les statiques. D'où l'idée plus simple de leur donner un nom explicitement privé.
[^] # Re: #define public
Posté par David Demelier (site web personnel) . En réponse au journal À table !. Évalué à 3.
Ça c'est pour cacher la déclaration des fonctions pour l'utilisateur de la bibliothèque, ça ne change pas la visibilité des symboles dans la bibliothèque ce qui était l'idée originale de l'OP je pense.
Si le symbole est exporté, entête privé ou non l'utilisateur de la bibliothèque peut l'appeler et parfois c'est pas ce qu'on souhaite. Alors le visibility hidden est « utile » pour les bibliothèques dynamiques mais pas les statiques. D'où l'idée plus simple de leur donner un nom explicitement privé.
AI is a mental disorder