J'essaie d'écrire un programme go de base qui appelle une fonction sur un fichier différent, mais une partie du même package. Cependant, il renvoie:
undefined: NewEmployee
Voici le code source:
main.go
:
package main
func main() {
emp := NewEmployee()
}
employee.go
:
package main
type Employee struct {
name string
age int
}
func NewEmployee() *Employee {
p := &Employee{}
return p
}
func PrintEmployee (p *Employee) {
return "Hello world!"
}
go run
? (et voir golang.org/doc/code.html )
main.go
et employee.go
? Parce que tous les fichiers go sont censés avoir une instruction package, et je n'en vois aucune dans la vôtre. Voir: golang.org/doc/code.html#PackageNames
go
outil.
package x
, et votre paquet principal ne contient généralement qu'un seul fichier, puis importe les autres éléments dont il a besoin