Ya, mencipta jenis tersuai yang tidak boleh diubah dalam Go memberikan banyak faedah, termasuk keselamatan rangkaian, kemudahan penaakulan dan pengendalian ralat yang lebih kukuh. Untuk mencipta jenis tidak boleh ubah, anda perlu mengikuti langkah berikut: Tentukan jenis: Isytiharkan jenis tersuai yang mengandungi pembolehubah ahli dan tidak sepatutnya termasuk penunjuk. Isytiharkan ketakbolehubah: Pastikan semua pembolehubah ahli ialah jenis asas atau jenis tidak berubah lain dan elakkan menggunakan kepingan, peta atau penunjuk. Gunakan kaedah penerima nilai: Gunakan penerima nilai untuk kaedah yang dikaitkan dengan jenis, tidak membenarkan peruntukan literal struktur dan memaksa kaedah untuk beroperasi hanya pada diri mereka sendiri.
Bagaimana untuk mencipta jenis tersuai tidak berubah dalam Go?
Mencipta jenis tersuai tidak berubah dalam Go memberikan banyak faedah, termasuk keselamatan rangkaian, kemudahan penaakulan dan pengendalian ralat yang lebih kukuh. Untuk mencipta jenis tidak boleh ubah, anda boleh mengikuti langkah berikut:
type
. Petunjuk tidak boleh dimasukkan dalam pengisytiharan. type
关键字对其进行声明。声明中不应包括指针。type ImmutableType struct { // 成员变量 }
type ImmutableType struct { Name string Age int }
func (i ImmutableType) GetName() string { return i.Name }
//go:nosumtype
//go:nosumtype type ImmutableType struct { Name string Age int }
Tentukan kebolehubah: Pastikan semua pembolehubah ahli ialah jenis asas atau jenis tidak berubah lain, seperti struct atau antara muka. Elakkan daripada menggunakan kepingan, peta atau penunjuk kerana ia boleh menunjukkan kepada data boleh ubah.
package main import "fmt" // 不可变类型 type Person struct { Name string Age int } func main() { // 创建一个不可变实例 person := Person{Name: "John", Age: 30} // 尝试修改成员变量(编译时错误) // person.Name = "Jane" // 通过值接收器获取值 name := person.GetName() fmt.Println(name) // 输出:John }
//go:nosumtype
. 🎜🎜rrreee🎜🎜Contoh Praktikal: 🎜🎜rrreee🎜Dengan mengikuti langkah ini, anda boleh mencipta jenis tersuai tidak berubah dalam Go, dengan itu meningkatkan keselamatan, kemunasabahan dan keteguhan program anda. 🎜Atas ialah kandungan terperinci Bagaimana untuk mencipta jenis tersuai yang tidak boleh diubah di Golang?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!