ホームページ > バックエンド開発 > Golang > 別のファイルから呼び出すと Go 関数が未定義になるのはなぜですか?

別のファイルから呼び出すと Go 関数が未定義になるのはなぜですか?

DDD
リリース: 2024-12-14 10:33:12
オリジナル
290 人が閲覧しました

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

別のファイルで定義された未定義の関数

別のファイルから NewEmployee という名前の関数を呼び出そうとしていますが、「未定義」というメッセージが表示されます。 " エラー。このエラーは、Go プログラムのビルドまたは実行方法が間違っていることが原因で発生します。

この問題を解決するには、go build または go install でファイル引数を使用するのを避け、代わりに go run ..

問題を修正する方法は次のとおりです。 code:

main.go:

package main

import "package/employee"

func main() {
  emp := employee.NewEmployee()
}
ログイン後にコピー

employee.go:

package employee

type Employee struct {
  name string
  age int
}

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

func PrintEmployee(p *Employee) {
  return "Hello world!"
}
ログイン後にコピー
次の手順に従ってくださいを使用すると、Go プログラムを正しくビルドして実行でき、同じパッケージ内の異なるファイルから関数を呼び出すことができます。

以上が別のファイルから呼び出すと Go 関数が未定義になるのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート