我是围棋新手。我有以下Go代码(在Playground这里)。我很困惑,因为我不明白第17行发生了什么。使用 nil 参数调用它,就好像它是一个函数一样,这意味着什么?函数名称前面的 是什么?myStruct[]*我希望能够直接比较,但它们属于不同的类型。ab 1: package main 2: 3: import ( 4: "fmt" 5: "google.golang.org/protobuf/runtime/protoimpl" 6: ) 7: 8: type myStruct struct { 9: e protoimpl.MessageState10: }11: 12: func myFunc() (*myStruct) {13: return new(myStruct)14: }15: 16: func main() {17: a := []*myStruct(nil)18: fmt.Println("a = ", a)19: b := myFunc()20: fmt.Println("b = ", b)21: }输出:a = []b = &{{{} [] [] <nil>}}
2 回答
- 2 回答
- 0 关注
- 59 浏览
添加回答
举报
0/150
提交
取消