小伙伴们对golang编程感兴趣吗?是否正在学习相关知识点?如果是,那么本文《Go编译错误:已声明但未使用(尽管已使用)》,就很适合你,本篇文章讲解的知识点主要包括。在之后的文章中也会多多分享相关知
小伙伴们对golang编程感兴趣吗?是否正在学习相关知识点?如果是,那么本文《Go编译错误:已声明但未使用(尽管已使用)》,就很适合你,本篇文章讲解的知识点主要包括。在之后的文章中也会多多分享相关知识点,希望对大家的知识积累有所帮助!
问题内容我有以下 go 示例:
package main
import (
"fmt"
"log"
"os"
"strconv"
)
func main() {
numberofusers := 10
numberofusersstr, found := os.lookupenv("number_of_users")
if found {
numberofusers, err := strconv.atoi(numberofusersstr)
if err != nil {
log.fatalln(err)
}
}
fmt.printf("number of users: %d", numberofusers)
}
构建此狙击手时,出现以下错误:
> go build -o app .
.\app.go:14:3: numberOfUsers declared but not used
显然该变量在最后一个打印语句中使用,但它似乎对编译器隐藏。我错过了什么?
当使用 := 时,您声明了一个新变量。这意味着这里的 numberofusers:
numberofusers, err := strconv.atoi(numberofusersstr)
实际上正在隐藏您的其他 numberofusers 变量。
您可以通过预先声明 err 然后仅使用 = 而不是 := 来修复此问题,这样您只需为变量分配新值而不声明新变量。
var err error
numberOfUsers, err = strconv.Atoi(numberOfUsersStr)以上就是本文的全部内容了,是否有顺利帮助你解决问题?若是能给你带来学习上的帮助,请大家多多支持编程网!更多关于Golang的相关知识,也可关注编程网公众号。
--结束END--
本文标题: Go编译错误:已声明但未使用(尽管已使用)
本文链接: https://www.lsjlt.com/news/596684.html(转载时请注明来源链接)
有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
2024-04-05
2024-04-05
2024-04-05
2024-04-04
2024-04-05
2024-04-05
2024-04-05
2024-04-05
2024-04-04
回答
回答
回答
回答
回答
回答
回答
回答
回答
回答
0