ホームページ > バックエンド開発 > Golang > Go の単一の名前空間にすべてのサブパッケージをインポートできますか?

Go の単一の名前空間にすべてのサブパッケージをインポートできますか?

Patricia Arquette
リリース: 2024-11-22 08:43:10
オリジナル
227 人が閲覧しました

Can You Import All Subpackages Under a Single Namespace in Go?

Go によるサブパッケージのインポート

Go モジュールを使用する場合、親ディレクトリから複数のサブパッケージをインポートする必要がある状況が発生することがあります。従来のアプローチは、次の例に示すように、各サブパッケージを個別にインポートすることです。

package main

import "one/entities/bar/sub1"
import "one/entities/bar/sub2"

func main() {

}
ログイン後にコピー

ただし、すべてのサブパッケージを単一の名前空間にインポートするなど、より簡潔なソリューションが必要な場合もあります。インポート構文ではパッケージ名またはパスの明示的な指定が必要なため、これは Go では直接実行できません。

// Invalid Syntax:
import bar "one/entities/bar/*"
ログイン後にコピー

Go の import ステートメントでは、インポートされる要素のソースを決定するために特定のパッケージ名またはパスが必要です。そのため、この言語ではワイルドカードのインポートはサポートされていません。

最終的に、最も実行可能なオプションは、必要な各サブパッケージを手動でインポートすることです:

package main

import (
    "log"
    "one/entities/bar/sub1"
    "one/entities/bar/sub2"
)

func main() {

    v := sub1.GetVar()
    log.Fatal(v)

}
ログイン後にコピー

以上がGo の単一の名前空間にすべてのサブパッケージをインポートできますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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