permulaan struktur global golang

WBOY
Lepaskan: 2024-02-12 09:33:08
ke hadapan
1220 orang telah melayarinya

permulaan struktur global golang

editor php Strawberry akan memperkenalkan kepada anda pemulaan struktur global di Golang hari ini. Di Golang, struktur boleh digunakan untuk mengatur dan mengurus data, dan pemulaan struktur global ialah cara yang mudah dan biasa digunakan. Melalui pemulaan struktur global, kita boleh memulakan struktur apabila program bermula, mengelakkan masalah pemulaan manual setiap kali struktur digunakan. Di bawah ini kami akan memperkenalkan secara terperinci kaedah dan langkah berjaga-jaga khusus untuk pemulaan struktur global untuk membantu semua orang memahami dan menggunakan fungsi ini dengan lebih baik.

Kandungan soalan

Saya ingin mengisytiharkan pembolehubah struktur global kepunyaan pakej tertentu dan memulakannya.

Saya mempunyai struktur direktori berikut:

main ├── symbol | ├── symbol.go | └── comma.go ├── main.go └── go.mod
Salin selepas log masuk

symbol.go:

package symbol type symbol struct{ name string format string }
Salin selepas log masuk

comma.go:

package symbol var comma = symbol{} comma.name = "comma" comma.format = ","
Salin selepas log masuk

main.go:

package main import "fmt" import "github.com/.../symbol" func main() { s := symbol.Comma fmt.Println(s.Name) }
Salin selepas log masuk

Apabila saya menjalankan ia berkata:

syntax错误:函数体外部的非声明语句

Bagaimana saya boleh menyelesaikan masalah ini?

Penyelesaian

Pernyataan pengisytiharan ialah satu-satunya jenis pernyataan yang dibenarkan pada peringkat pakej. Kenyataan

comma.name = "comma" comma.format = ","
Salin selepas log masuk

ialah penyata tugasan. Tugasan bukan pengisytiharan.

Ada dua cara untuk menyelesaikan masalah ini. Kaedah pertama dan pilihan ialah menggunakanliteral kompaununtuk memulakan nilai dalam perisytiharan pembolehubah.

var comma = symbol{name: "comma", format: ","}
Salin selepas log masuk

Kaedah kedua ialah memindahkan pernyataan tugasan ke fungsiinit:

func init() { Comma.Name = "Comma" Comma.Format = "," }
Salin selepas log masuk

initFungsi dilaksanakan secara automatik apabila pakej dimulakan.

Atas ialah kandungan terperinci permulaan struktur global golang. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:stackoverflow.com
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
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!