Golang 結構體判空

package main

import (
    "fmt"
    "reflect"
)

type A struct{
    name string
    age int
}

func (a A) IsEmpty() bool {
    return reflect.DeepEqual(a, A{})
}

func main() {

    var a A

    if a == (A{}) {  // 括號不能去
        fmt.Println("a == A{} empty")
    }

    if a.IsEmpty() {
        fmt.Println("reflect deep is empty")
    }
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章