Rumah >pembangunan bahagian belakang >Golang >Bagaimanakah Saya Boleh Menentukan sama ada Harta Go Struct Telah Dimulakan?

Bagaimanakah Saya Boleh Menentukan sama ada Harta Go Struct Telah Dimulakan?

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-12-10 00:50:09453semak imbas

How Can I Determine if a Go Struct Property Has Been Initialized?

Bagaimana Anda Semak Sama ada Harta Ditetapkan dalam Struktur?

Dalam Go, jika anda tidak pasti sama ada sifat struct telah dimulakan, terdapat dua pendekatan yang boleh anda ambil untuk menentukan statusnya.

Gunakan Nil untuk Sifat Penunjuk

Jika struct anda sifat ialah penunjuk, anda boleh menyemak sama ada ia adalah sifar untuk menentukan sama ada ia telah ditetapkan. Contohnya:

type MyStruct struct {
    Property *string
}

test := new(MyStruct)
if test.property != nil {
    // Property has been set
}

Bandingkan Sifat Rentetan dengan Rentetan Kosong

Sebagai alternatif, jika sifat struct anda ialah rentetan, anda boleh membandingkannya dengan rentetan kosong. Jika sifat itu sama dengan rentetan kosong, ia belum ditetapkan.

type MyStruct struct {
    Property string
}

s1 := MyStruct{
    Property: "hey",
}

s2 := MyStruct{}

if s1.Property != "" {
    // s1.Property has been set
}

if s2.Property == "" {
    // s2.Property has not been set
}

Kedua-dua pendekatan ini menyediakan cara yang boleh dipercayai untuk menentukan sama ada sifat struct telah ditetapkan dalam Go.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menentukan sama ada Harta Go Struct Telah Dimulakan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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