golang
已收录文章:12575篇
-
Go语言中值类型赋值会进行完整内存复制,导致两个变量拥有独立副本,互不影响;而引用类型赋值仅复制引用,指向同一底层数据。值类型包括基本类型、数组、结构体,赋值开销随数据大小增加,可能影响性能;引用类型如切片、映射、通道、指针等,赋值高效但共享数据。为优化性能,应使用指针传递大型结构体、合理设计结构体字段、返回局部大型结构体时返回指针,并利用引用类型的特性避免不必要的复制。154 收藏
-
golang是强类型语言,编译后是机器码,所以一般使用 反射 或 代码生成 解决依赖注入的问题 基于反射的DI 基于反射解决DI问题的框架, 使用比较多的是Uber的 dig 库 官方的153 收藏
-
首先说明pointer指针和switch是两个并没有直接关系的知识点,放在一篇文章中将的原因是,这两个知识点在学习和使用的过程中往往被大家忽视。 pointer go语言不存在指针操作,只有2个符号: &am153 收藏
-
01 介绍 在 Golang 语言项目开发中,因为 Golang 语言是强类型,所以经常会使用到类型转换。本文我们介绍类型转换三方库 - github.com/spf13/cast ,它是一个极简类型转换的三方库,通过它提供的函数153 收藏
-
FirstOrCreate 获取第一个匹配的记录,或创建一个具有给定条件的新记录(仅适用于struct, map条件) db.Where(User{Name: "Jinzhu"}).FirstOrCreate(&user) 代码案例: func (tsu *TopicSignUp) TopicSignUpCreate() (bool,153 收藏
-
无论是无缓冲通道,还是有缓冲通道,都存在阻塞的情况,但其实有些情况,我们并不想读数据或者写数据阻塞在那里,有1个唯一的解决办法,那就是使用select结构。 这篇文章会介绍,哪些情153 收藏