Open kagxin opened 4 years ago
一个结构体值指针
package main import "fmt" type Persion struct { Name string `json:"name"` Age int `json:"age"` } func main() { var p *Persion = &Persion{"xiaoming", 10} fmt.Println(p) p2 := &Persion{"xiaoming", 10} fmt.Println(p2) p3 := new(Persion) p3.Name = "xiaoming" p3.Age = 10 fmt.Println(p3) }
golang的指针使用惯例,不太适应。把指针传给函数,然后函数修改指针指向的变量
var comments []model.Comment model.DB.Where("question_id=?", qid).Find(&comments)
golang相对于python来说语法糖比较少,没有三元运算符,列表生成式,没有map,filter
不太习惯golang的错误处理风格,也许这种风格挺好的只是暂时不习惯
m := map[string]int{"xiaoming": 10} if age, ok := m["xiaoming"]; ok { fmt.Println(age) }
golang的错误处理风格是LBYL “Easier to Ask for Forgiveness than Permission.”(请求宽恕比许可更容易)— EAFP “Look Before You Leap”(三思而后行 )— LBYL
声明初始化方式多
不写纯函数
没有列表生成式和三元运算符
错误处理
golang的错误处理风格是LBYL “Easier to Ask for Forgiveness than Permission.”(请求宽恕比许可更容易)— EAFP “Look Before You Leap”(三思而后行 )— LBYL