Avatar ·

Que signifie le symbole de soulignement avant l'importation en Go ?

Bonjour ! J'ai commencé à apprendre Go et j'ai rencontré une construction que je ne comprends pas. Dans du code écrit par quelqu'un d'autre, j'ai vu cette importation : ```go import ( "fmt" _ "image/png" "os" ) ``` Le symbole de soulignement (`_`) avant la chaîne `"image/png"` me trouble. Je sais qu'en Go, les importations inutilisées provoquent une erreur de compilation, mais ici c'est clairement autre chose. J'ai essayé de supprimer cette importation, et le code a cessé de fonctionner — le programme ne pouvait pas décoder les images PNG. Pourtant, je n'appelle aucune fonction du package `image/png` directement. Comment cela fonctionne-t-il ? Pourquoi une telle importation est-elle nécessaire si nous n'utilisons pas explicitement les fonctions du package ? Dans la documentation, j'ai trouvé une mention des fonctions `init()`, mais je n'ai pas complètement compris le lien. Expliquez-moi, s'il vous plaît, à quoi sert le soulignement avant l'importation, et dans quels cas cela est utilisé.