我正在尝试在Go中初始化一个结构,我的一个值是返回一个int和一个错误,如果遇到一个使用strconv.Atoi("val")
从字符串转换的。
我的问题是:有没有办法忽略Golang中的错误返回值?
ts := &student{
name: td[0],
ssn: td[2],
next: students.next,
age: strconv.Atoi(td[1]),
}
给出错误
multiple-value strconv.Atoi() in single-value context
如果我添加了错误,我不想包含在我的结构中,我将得到一个错误,我正在使用未在结构中定义的方法。
答案 0 :(得分:6)
您可以使用作业左侧的_
来忽略返回值,但是,在使用“复合文字”时,我不认为有任何方法可以执行此操作。您的示例中的初始化样式。
IE我可以returnValue1, _ := SomeFuncThatReturnsAresultAndAnError()
,但如果你在你的例子中尝试过那样的话;
ts := &student{
name: td[0],
ssn: td[2],
next: students.next,
age, _: strconv.Atoi(td[1]),
}
它还会生成编译器错误。