Fonction déclarée dans un autre fichier non visible — erreur "undefined" en Go
Bonjour à tous ! Je viens de commencer à apprendre Go et j'ai rencontré un problème très étrange. J'ai deux fichiers dans le même dossier `main` :
**main.go:**
```go
package main
func main() {
hello()
}
```
**helper.go:**
```go
package main
func hello() {
println("Hello from helper!")
}
```
J'exécute le programme avec la commande `go run main.go` et j'obtiens l'erreur :
```
# command-line-arguments
./main.go:4:2: undefined: hello
```
Pourquoi cela se produit-il ? Pourtant, les deux fonctions sont dans le même package `main`, et dans d'autres langages (comme Python ou Java), les fichiers dans un même dossier se "voient" généralement automatiquement. J'ai essayé de renommer les fichiers, de vérifier la syntaxe — rien n'y fait. Dites-moi, s'il vous plaît, qu'est-ce que je fais de travers ? Comment organiser correctement le code en Go pour que les fonctions de différents fichiers soient accessibles ?
<<>>
Pourquoi l'erreur "undefined" se produit
Le problème est que la commande go run main.go exécute un seul fichier — ma