Rumah > pembangunan bahagian belakang > Golang > Bagaimana untuk menetapkan nilai sandaran lalai kepada pembolehubah

Bagaimana untuk menetapkan nilai sandaran lalai kepada pembolehubah

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
Lepaskan: 2024-02-06 08:24:06
ke hadapan
723 orang telah melayarinya

Bagaimana untuk menetapkan nilai sandaran lalai kepada pembolehubah

Kandungan soalan

Saya mempunyai struct penunjuk

dalam permohonan saya
type body struct {
   a *string
   b *string
}
Salin selepas log masuk

Saya mahu lulus nilai rentetan kosong lalai jika body中的ab的值传递给函数,这样如果指针akosong. Sesuatu seperti ini:

sampleFunc(ctx,*A||"");

func sampleFunc(ctx Context,count string){
// ......
}
Salin selepas log masuk

Apa yang perlu saya lakukan?


Jawapan Betul


Isytiharkan fungsi untuk mengira nilai dari penunjuk dengan logik yang anda perlukan. Saya menggunakan generik di sini supaya fungsi berfungsi dengan mana-mana jenis.

// value returns the value the value pointed
// to by p or the empty value when p is nil.
func value[t any](p *t) t {
    var result t
    if p != nil {
        result = *p
    }
    return result
}
Salin selepas log masuk

Gunakan seperti ini:

samplefunc(ctx, value(a))
Salin selepas log masuk

API dengan *string medan biasanya menyediakan fungsi pembantu untuk tujuan ini. Contohnya, AWS API menyediakan fungsi stringvalue:

sampleFunc(ctx, aws.StringValue(A))
Salin selepas log masuk

Atas ialah kandungan terperinci Bagaimana untuk menetapkan nilai sandaran lalai kepada pembolehubah. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

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