Rumah > Artikel > pembangunan bahagian belakang > Bagaimana untuk Memformat Ralat dengan betul dengan Argumen Pembolehubah dalam Go?
Dalam usaha untuk meningkatkan pengendalian ralat, pengguna boleh berusaha untuk mencipta versi ralat yang disesuaikan. Baharu fungsi yang menerima berbilang argumen, meniru tingkah laku fmt.Sprintf. Walaupun percubaan telah dibuat, cabaran timbul dalam mentafsir hujah pembolehubah dengan betul dalam fungsi tersuai. Artikel ini meneroka penyelesaian dan memberikan panduan tentang melaksanakan mekanisme pemformatan ralat yang teguh.
Salah satu percubaan sedemikian melibatkan penentuan fungsi seperti berikut:
<code class="go">func NewError(format string, a ...interface{}) error { return errors.New(fmt.Sprintf(format, a)) }</code>
Walau bagaimanapun, pendekatan ini gagal apabila cuba untuk hantar argumen pembolehubah kepada fmt.Sprintf, menyebabkan argumen dianggap sebagai tatasusunan tunggal. Untuk menyelesaikan isu ini, adalah penting untuk menggunakan operator ... selepas argumen pembolehubah (a) dalam fungsi tersuai, seperti yang ditunjukkan dalam kod yang diperbetulkan di bawah:
<code class="go">func NewError(format string, a ...interface{}) error { return errors.New(fmt.Sprintf(format, a...)) }</code>
Dengan menggunakan ... operator, fmt.Sprintf boleh mentafsir argumen pembolehubah dengan betul dan memformat rentetan dengan sewajarnya. Ini membolehkan pengguna mencipta fungsi pemformatan ralat tersuai yang memanfaatkan keupayaan pemformatan berkuasa fmt.Sprintf.
Atas ialah kandungan terperinci Bagaimana untuk Memformat Ralat dengan betul dengan Argumen Pembolehubah dalam Go?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!