type Node struct {
Stat *Stat
}
type Stat struct {
StatInfo []string
}
然后
node := new(Node)
node.Stat.Statinfo=strings.Split(somestr," ")
结果是:
紧急:运行时错误:无效的内存地址或nil指针取消引用
答案 0 :(得分:5)
创建结构时,其字段默认为对应类型的the zero value。 0
是int
,指针字段是nil
,等等。
在您的情况下,唯一字段Stat
是一个指针,调用new(Node)
后,node.Stat
是nil
,因此会导致您看到运行时错误。
为避免错误,请确保在访问字段之前先对其进行初始化。