Rumah > pembangunan bahagian belakang > Golang > Bagaimanakah Saya Mengimport dan Menggunakan Struktur daripada Pakej Berbeza dalam Go?

Bagaimanakah Saya Mengimport dan Menggunakan Struktur daripada Pakej Berbeza dalam Go?

DDD
Lepaskan: 2024-12-09 14:24:18
asal
505 orang telah melayarinya

How Do I Import and Use Structs from Different Packages in Go?

Mengimport Struktur daripada Pakej Berbeza dalam Go

Apabila bekerja dengan aplikasi kompleks yang menggunakan berbilang pakej dan fail, selalunya perlu menggunakan semula struktur data ditakrifkan di lokasi yang berasingan. Di Java, mudah untuk mengimport kelas daripada pakej lain. Walau bagaimanapun, Go mengambil pendekatan yang berbeza.

Mengimport Pakej

Tidak seperti Java, Go tidak mengimport langsung jenis atau fungsi. Sebaliknya, kami mengimport pakej. Pengisytiharan import membolehkan kami mengakses semua pengecam yang dieksport dalam pakej tersebut. Contohnya:

import "container/list"
Salin selepas log masuk

Selepas mengimport pakej, kami boleh mengakses pengecam yang dieksport menggunakan nama pakej.Nama Pengecam:

var mylist *list.List = list.New()
Salin selepas log masuk

Struktur Mengimport

Untuk mengimport struct yang ditakrifkan dalam pakej dan fail lain, hanya ikuti ini langkah:

  1. Isytiharkan pembolehubah jenis yang diingini dan mulakannya dengan fungsi pembina.
pq := &PriorityQueue{}
Salin selepas log masuk
  1. (Pilihan) Import pakej yang mengandungi struct kalau belum diimport.
import (
    "path/to/package"
)
Salin selepas log masuk

Contoh

Katakan kita mempunyai struct PriorityQueue yang ditakrifkan dalam fail berasingan:

package path/to/package

type PriorityQueue []*Item

type Item struct {
    value string
    priority int
    index int
}
Salin selepas log masuk

Kepada gunakan struct ini dalam fail lain, kami boleh mengimport pakej dan mengisytiharkan PriorityQueue pembolehubah:

package main

import (
    "fmt"
    "path/to/package"
)

func main() {
    pq := &path/to/package.PriorityQueue{}

    // Use the PriorityQueue
    pq.Push(&path/to/package.Item{value: "item1", priority: 1})

    fmt.Println(pq)
}
Salin selepas log masuk

Atas ialah kandungan terperinci Bagaimanakah Saya Mengimport dan Menggunakan Struktur daripada Pakej Berbeza dalam Go?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan