ホームページ >バックエンド開発 >Golang >Go プログラムで別のファイルの関数を呼び出すと「未定義」エラーが表示されるのはなぜですか?

Go プログラムで別のファイルの関数を呼び出すと「未定義」エラーが表示されるのはなぜですか?

Patricia Arquette
Patricia Arquetteオリジナル
2024-12-17 16:17:09403ブラウズ

Why Does My Go Program Show an

Go プログラム関数のあいまいさが解決されました

別のファイルで定義された関数を呼び出そうとしたときに、Go プログラムで「未定義」が発生しました。エラー。次のコードは、このシナリオを示しています:

ソースコード

main.go

package main

func main() {
    emp := NewEmployee()  // Undefined error
}

employee.go

package main

type Employee struct {
    name string
    age int
}  

func NewEmployee() *Employee {
    // Employee struct and function definitions
}

func PrintEmployee (p *Employee)  {
    // Function definitions
}

エラー

プログラムを実行すると、次のエラーが発生します返された値:

undefined: NewEmployee

解決策

このエラーは、不適切なファイル処理技術に起因します。これを解決するには:

  • パッケージ ディレクトリ内で go build または go install を使用します。
  • または、パッケージのインポート パスを指定します。

は避けてください。 go build または go install のファイル引数を使用します。 go run では、ファイル引数を使用できますが、一般的に go run を使用してパッケージをビルドすることをお勧めします。または、go install または go build を選択します。

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

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。