我是靠谱客的博主 神勇飞鸟,最近开发中收集的这篇文章主要介绍golang 引入本地包报错 imported and not used: “xxxx“go,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

golang 版本go1.16.13
在1.11以后用go mod 管理包
需要 set GO111MODULE=on
在引入本地包调用其他包中函数的时候一直报错imported and not used: "xxxx"go,以为是引入的包邮问题呢,实际上是掉用函数的时候没有写包名导致的。

下图中cal函数中没有写包名导致的。
在这里插入图片描述

在这里插入图片描述
记录下如何调用其他包下的函数:
在main.go中调用utils.go中的C函数。
目录结构如下
funcdemo–>main–>main.go
funcdemo–>utils–>utils.go
在这里插入图片描述
utils.go代码如下,包中创建了Cal函数

package utils

import "fmt"

//函数名首字母大写说明是public,大家都可以调用,首字母小写是私有的
func Cal(n1 float64, n2 float64, operator byte) float64 {
	var res float64
	switch operator {
	case '+':
		res = n1 + n2
	case '-':
		res = n1 - n2
	case '*':
		res = n1 * n2
	case '/':
		res = n1 / n2
	default:
		fmt.Println("输入有误")

	}
	return res
}

main.go代码如下,调用了utils包中Cal函数

package main

import (
	"fmt"
	"funcdemo/utils"
)

func main() {
	var n1 float64 = 1.2
	var n2 float64 = 2.3
	var operator byte = '+'
	result := utils.Cal(n1, n2, operator)
	fmt.Println("res=", result)
}

然后执行go mod init

C:goprojectsrcgo_codechapter06funcdemo>go mod init funcdemo
go: creating new go.mod: module funcdemo
go: to add module requirements and sums:
        go mod tidy

C:goprojectsrcgo_codechapter06funcdemo>dir
 驱动器 C 中的卷是 Windows
 卷的序列号是 94A9-B808

 C:goprojectsrcgo_codechapter06funcdemo 的目录

2022/01/26  16:50    <DIR>          .
2022/01/26  11:56    <DIR>          ..
2022/01/26  16:50                25 go.mod
2022/01/26  11:36    <DIR>          main
2022/01/26  00:36    <DIR>          utils
               1 个文件             25 字节

执行go run
C:goprojectsrcgo_codechapter06funcdemo>cd main
C:goprojectsrcgo_codechapter06funcdemomain>go run main.go
res= 3.5

常用的参数
set GO111MODULE=on

最后

以上就是神勇飞鸟为你收集整理的golang 引入本地包报错 imported and not used: “xxxx“go的全部内容,希望文章能够帮你解决golang 引入本地包报错 imported and not used: “xxxx“go所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(47)

评论列表共有 0 条评论

立即
投稿
返回
顶部