Slice of slices types

前端 未结 2 1619
無奈伤痛
無奈伤痛 2021-02-01 12:11

I\'m currently working my way through the excellent Tour of Go. I finished one of the exercises (#45) with the following solution:

func Pic(dx, dy int) [][]uint8         


        
2条回答
  •  不思量自难忘°
    2021-02-01 12:38

    There is no other way to do this in Go.

    Yes, I agree it is verbose, but necessary. The second make() statement is entirely independent of the first one. It could be argued that the compiler should be able to infer the type from pic[i], but it doesn't at this point.

    Another point: how would the make() statement look if you omitted the type in the second case? The make() is still required to do the actual allocation and to be able to specify the required len/capacity.

    As a side note, you mixed up the slice lengths. The exercise states the top level slice should have length dy, not dx as you put in your code.

提交回复
热议问题