代码如下:
type Man struct {
Name *string
Age *uint8
}
func main() {
// 需要先声明字段的值
name := "tom"
var age uint8 = 18
// 然后再取地址赋给结构体字段
man := Man{Name: &name, Age: &age}
fmt.Println(man)
}
我在为结构体的指针类型字段赋值时,需要先定义这两个字段,然后在 & 获取地址, 有什么简便写法吗?
代码如下:
type Man struct {
Name *string
Age *uint8
}
func main() {
// 需要先声明字段的值
name := "tom"
var age uint8 = 18
// 然后再取地址赋给结构体字段
man := Man{Name: &name, Age: &age}
fmt.Println(man)
}
我在为结构体的指针类型字段赋值时,需要先定义这两个字段,然后在 & 获取地址, 有什么简便写法吗?
|
westoySep 28, 2022
1
封装一个函数......
|
|
dongtingyueSep 28, 2022
2
为什么结勾体里面要定义成指针?
|
|
3
@dongtingyue 用 sqlx 查询数据库时,有些字段是 null ,所以需要定义为指针类型
|
|
wheelerSep 28, 2022 via iPhone
4
|
|
5
@wheeler 就是封装成函数是吧?
|
|
bruce0Sep 28, 2022
6
sqlx 查询 空字段, 是不是可以用这个解决 https://www.jianshu.com/p/9231752e7f96
|
|
7
@bruce0 这个可以。
|
|
haolongsunSep 29, 2022
8
sqlx 提供了 一系列的 null 值吧,去文档找找
|
|
WaldenHorizonSep 29, 2022
9
func Ptr[T interface{}](n T) *T {
return &n } |
|
king888Sep 29, 2022
10
写 golang 有没有种可能,干脆数据库能不用 null ,就不用 null 算了
|
|
11
@king888 sql 查询一些情况下还是避免不了 null 值的返回
|
|
guanhui07Oct 1, 2022
12
确实避免不了 null 比如 text 类型就不能设置为 not null 约束
|