Golang中Append()函数被评估但未使用错误解析
Golang中Append()函数被评估但未使用错误解析 算了,我太愚蠢且无知
3 回复
哈哈 @rljames3212 我们大家不都偶尔这样吗?
在Go语言中,当你使用append()函数但未将结果赋值给原切片或新变量时,编译器会报错“append evaluated but not used”。这是因为append()不会修改原切片,而是返回一个新切片。下面是一个示例和解决方案:
错误示例:
package main
func main() {
slice := []int{1, 2, 3}
append(slice, 4) // 错误:append被评估但未使用
}
正确用法:
package main
import "fmt"
func main() {
slice := []int{1, 2, 3}
slice = append(slice, 4) // 将结果赋值给原切片
fmt.Println(slice) // 输出:[1 2 3 4]
// 或者赋值给新变量
newSlice := append(slice, 5)
fmt.Println(newSlice) // 输出:[1 2 3 4 5]
}
如果你需要直接修改原切片,必须将append()的返回值重新赋值给切片变量。

