Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Go colon sama dengan operator dan pembolehubah baharu

Go colon sama dengan operator dan pembolehubah baharu

PHPz
PHPzke hadapan
2024-02-10 16:57:09490semak imbas

Go 冒号等于运算符和一个新变量

editor php Xinyi berada di sini untuk memperkenalkan ciri baharu kepada anda - operator bersamaan titik bertindih Go dan pembolehubah baharu. Fungsi pengendali ini adalah untuk mencipta pembolehubah baharu dalam bahasa Go dan memulakannya kepada nilai ungkapan. Pengenalan ciri ini menjadikan kod lebih ringkas dan boleh dibaca, di samping mengurangkan jumlah kod berlebihan. Dengan menggunakan operator sama dengan kolon, kita boleh menetapkan nilai kepada pembolehubah sambil mengisytiharkannya, meningkatkan kecekapan dan kebolehbacaan kod. Dalam artikel berikut, kami akan memperkenalkan penggunaan dan langkah berjaga-jaga ciri baharu ini secara terperinci, dengan harapan dapat membawa bantuan dan inspirasi kepada semua orang.

Kandungan soalan

Ini mungkin bukan soalan baharu, tetapi saya tidak dapat mencari jawapannya di mana-mana.

Dengan kod ini, tiada satu pun daripada :== pengendali berfungsi pada talian panggilan fungsi di dalam gelung.

Saya mempunyai kes penggunaan di mana saya perlu mengisytiharkan tatasusunan yang besar sekali di luar gelung for dan mengemas kininya dalam fungsi dan kemudian menyerahkannya kembali. Tetapi fungsi itu juga mengembalikan pembolehubah lain yang berbeza setiap kali dan digunakan dalam gelung itu.

Pergi ke pautan taman permainan: 1

import "fmt"

func someFunc(names []string) (int, []string) {
    foo := 35 // Just for the example
    names = append(names, "Bob")
    return foo, names
}

func main() {

    names := []string{"Fred", "Mary"}

    for i := 0; i < 10; i++ {
        newVariable, names := someFunc(names) // This line is the problem
        fmt.Println(newVariable)
    }

}

Bagaimana saya boleh memfaktorkan semula ini untuk berfungsi seperti yang diharapkan?

Penyelesaian

Bagaimana pula dengan mengisytiharkan Pembolehubah baharu sebelum :=?

for i := 0; i < 10; i++ {
    var newVariable int
    newVariable, names = someFunc(names)
    fmt.Println(newVariable)
}

Atas ialah kandungan terperinci Go colon sama dengan operator dan pembolehubah baharu. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:stackoverflow.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam