有没有办法忽略Golang中的错误返回值?
我试图在Go中初始化一个结构,我的一个值是,如果使用有没有办法忽略Golang中的错误返回值?,go,Go,我试图在Go中初始化一个结构,我的一个值是,如果使用strconv.Atoi(“val”)从字符串转换时遇到一个int和一个错误,则返回int 我的问题是:有没有办法忽略Golang中的错误返回值 ts := &student{ name: td[0], ssn: td[2], next: students.next, age: strconv.Atoi(td[1]), } 这就产生了错误 multiple-value strconv.Atoi()
strconv.Atoi(“val”)
从字符串转换时遇到一个int和一个错误,则返回int
我的问题是:有没有办法忽略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
如果我添加了err(我不想包含在我的结构中),我将得到一个错误,即我使用的是一个未在结构中定义的方法。您可以使用赋值左侧的
忽略返回值,我认为在使用示例中的“复合文字”初始化样式时,没有任何方法可以做到这一点
例如,我可以执行returnValue1,:=somefuncthattreturnsaresultandanError()
,但如果您在示例中尝试了以下操作:
ts := &student{
name: td[0],
ssn: td[2],
next: students.next,
age, _: strconv.Atoi(td[1]),
}
它还将生成一个编译器错误。Ya我看到了,看起来他们没有使用复合文字初始化。是的,它没有在复合文字中使用,但这不会改变他们想要达到相同目标的事实:放弃返回的第二个值(错误)。请同时阅读答案,该答案建议使用
MustXXX()
helper函数来完成此操作。因此,没有一种方法可以在一行中完成此操作?没有。您的选项列在此答案中:。(事实上,你也可以在一行中完成,但那会更难看——请看技术。)遗憾的是,没有办法在一行中完成。