Go 1.18 の使用時に「any」を使用すると「宣言されていない名前」というエラーが発生するのはなぜですか?
「any」を「」に置き換えようとすると、インターフェイス{}」、Go 1.18 ユーザーは「宣言されていない名前: 任意 (バージョンが必要)」というエラーが発生する可能性がありますgo1.18以降)。このエラーは、go.mod ファイルで指定された Go のバージョンと、使用している Go のバージョンが一致しないために発生します。
「any」キーワードは Go 1.18 で導入されました。これを使用するには、go.mod ファイルで Go バージョン 1.18 以降を指定する必要があります。 go.mod ファイルが 1.18 より前のバージョン (1.17 など) を宣言している場合、エラーが発生します。
解決策:
このエラーを解決するには、go を調整してください。 .mod ファイルには、使用している Go バージョン (1.18 以降) が反映されます。たとえば、go.mod ファイルの内容が次の場合:
次のように変更します:
この変更により、コードで「any」キーワードを使用できるようになり、エラーが回避されます。各モジュールの go.mod ファイルによって、コンパイルに使用される Go のバージョンが決定されることに注意してください。このアプローチにより、モジュール作成者は、好みのペースで言語拡張機能を段階的に採用できます。
実際の例については、プレイグラウンド リンク https://go.dev/play/p/au6TtTvNsRy を参照してください。ここで、go.mod ファイルを編集して、エラーとその解決策を示すことができます。
以上がGo 1.18 が「undeclared name: any」を報告するのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。