Rumah >pembangunan bahagian belakang >Golang >Mengapa fungsi Go saya tidak ditentukan apabila dipanggil dari fail lain?

Mengapa fungsi Go saya tidak ditentukan apabila dipanggil dari fail lain?

DDD
DDDasal
2024-12-14 10:33:12294semak imbas

Why is my Go function undefined when called from a different file?

Fungsi Tidak Ditakrifkan Ditakrifkan dalam Fail Berbeza

Anda cuba memanggil fungsi bernama NewEmployee daripada fail lain, tetapi anda menerima "undefined "kesilapan. Ralat ini disebabkan oleh cara membina atau menjalankan program Go yang salah.

Untuk menyelesaikan isu ini, elakkan menggunakan argumen fail untuk go build atau go install dan sebaliknya bina pakej menggunakan go run ..

Berikut ialah cara anda boleh membetulkan anda kod:

main.go:

package main

import "package/employee"

func main() {
  emp := employee.NewEmployee()
}

pekerja.go:

package employee

type Employee struct {
  name string
  age int
}

func NewEmployee() *Employee {
  p := &Employee{}
  return p
}

func PrintEmployee(p *Employee) {
  return "Hello world!"
}

Dengan mengikut arahan ini , anda boleh membina dan menjalankan program Go anda dengan betul, membenarkan fungsi dipanggil daripada fail berbeza dalam pakej yang sama.

Atas ialah kandungan terperinci Mengapa fungsi Go saya tidak ditentukan apabila dipanggil dari fail lain?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn