別のパッケージおよびファイルからの構造体のインポート
Go で、別のパッケージおよびファイルから型をインポートする際に問題が発生しました。参照している型は、Item 型のスライスとして定義された PriorityQueue です。
Java とは異なり、Go は個々の型や関数のインポートをサポートしていません。代わりに、パッケージをインポートします。インポート宣言により、エクスポートされたすべての識別子がパッケージからプログラムに取り込まれます。
たとえば、PriorityQueue 型をインポートするには、次のインポート宣言を使用します。
import "your.package.path/modulename"
このステートメントにより、 PriorityQueue タイプには modulename.PriorityQueue としてアクセスできます。同様に、Item タイプは modulename.Item.
として参照できます。名前の競合がある場合は、インポート宣言でパッケージの名前変更またはエイリアスを使用できます。例:
import ( m "your.package.path/modulename" pq "path/to/priorityqueue" )
これにより、PriorityQueue タイプに pq.PriorityQueue として、項目タイプに m.Item としてアクセスできるようになります。
さらに、パッケージ内の特定のファイルをインポートできます。エクスポートされていない型にアクセスできるようになります。ただし、この方法はお勧めできません。使用は慎重に行ってください。
以上がGo で別のパッケージから構造体をインポートするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。