Mengapa Go tidak panik apabila cuba membaca peta sifar?

WBOY
Lepaskan: 2024-02-06 10:00:04
ke hadapan
1089 orang telah melayarinya

为什么 Go 在尝试读取 nil 映射时不会恐慌?

Kandungan soalan

Ini kodnya, saya menjangkakan panik semasa mengakses mp["12"] tetapi ia berfungsi dengan baik di sana

// You can edit this code!
// Click here and start typing.
package main

import "log"

func main() {
    var mp map[string]int = nil
    log.Println(mp["12"], "12") // works fine
    if mp == nil {
        panic("map is nil") // panic here
    }
}
Salin selepas log masuk

Jawapan betul


Anda boleh membaca dari peta kosong, tetapi tidak menulis. Spesifikasi bahasa mengatakan:

Atas ialah kandungan terperinci Mengapa Go tidak panik apabila cuba membaca peta sifar?. 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
Tutorial Popular
Lagi>
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!