Rumah >pembangunan bahagian belakang >Golang >Bagaimanakah Saya Boleh Mengelak Penegasan Jenis dalam Kes Suis Jenis Go?
Cara Mengelakkan Penegasan Jenis dalam Cawangan Suis Jenis
Dalam Go, suis jenis biasanya digunakan untuk mengendalikan objek daripada jenis yang berbeza. Walau bagaimanapun, secara manual menegaskan jenis objek dalam setiap kes boleh menjadi membosankan. Soalan ini menangani isu menghapuskan keperluan untuk pernyataan sedemikian.
Soalan Asal:
Saya menggunakan suis jenis seperti berikut:
switch question.(type) { case interfaces.ComputedQuestion: handleComputedQuestion(question.(interfaces.ComputedQuestion), symbols) case interfaces.InputQuestion: handleInputQuestion(question.(interfaces.InputQuestion), symbols) }
Adakah terdapat cara untuk menghalang penegasan jenis eksplisit di dalam kes?
Jawapan:
Ya, anda boleh mengelakkan penegasan jenis dengan memberikan hasil suis jenis kepada pembolehubah jenis yang dijangkakan. Ini memberikan anda jenis yang ditegaskan tanpa memerlukan penegasan lanjut.
switch question := question.(type) { case interfaces.ComputedQuestion: handleComputedQuestion(question, symbols) case interfaces.InputQuestion: handleInputQuestion(question, symbols) }
Dalam contoh ini, ungkapan soalan := question.(type) memberikan hasil suis jenis kepada pembolehubah soalan. Suis jenis itu sendiri kekal tidak berubah.
Pendekatan ini memudahkan kod anda dengan menghapuskan keperluan untuk penegasan jenis manual dalam kes, menjadikannya lebih ringkas dan lebih mudah dibaca.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengelak Penegasan Jenis dalam Kes Suis Jenis Go?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!