【发布时间】:2011-03-08 22:17:35
【问题描述】:
在原始语言结构中使用似乎毫无意义,因为您无法指定任何类型的值
func main() {
y := new([]float)
fmt.Printf("Len = %d", len(*y) ) // => Len = 0
}
对于 stucts 来说,bit 更有意义,但是说 y := new(my_stuct) 和看似更简洁的 y := &my_struct 有什么区别?
并且由于您创建的任何内容都基于这些原语,因此它们将被初始化为所述零值。那么有什么意义呢?你什么时候想使用new()?
很抱歉提出一个非常初学者的问题,但文档并不总是那么清楚。
【问题讨论】:
-
"what's the difference between..."
new用于一个类型。&用于值
标签: go