Go   发布时间:2022-04-09  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了Golang导入包大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我对Golang有一些问题,包括包.我有那个结构

src/
├── hello_world
│   ├── hello.go
│   └── math
│       └── add.go

hello.go文件包含以下代码

package main

import (
    "fmt"
    math "hello_world/math"
)

func main() {
    fmt.Println("Hello World")
    x := math.add(6,5)
}

添加.go

package math

func add(x,y int) int {
    return x + y
}

当我跑去打招呼时我会看到:

evgen@laptop:~/go/src/hello_world$go run hello.go 
# command-line-arguments
./hello.go:10: cannot refer to unexported name math.add
./hello.go:10: undefined: "hello_world/math".add

GOPATH:

evgen@laptop:~/go/src/hello_world$echo $GOPATH
/home/evgen/go

如何解决?谢谢!

解决方法

在包之外,只能访问和引用导出的标识符,即以大写字母开头的标识符.

所以最简单的解决方法是通过在math.go中将其名称更改为Add()来导出math.add()函数

func Add(x,y int) int {
    return x + y
}

当然,当你从main.go中提到它时:

x := math.Add(6,5)

作为旁注,请注意,在导入hello_world / math包时,您不必指定新名称来引用其导出的标识符:认情况下,它将是其导入路径的最后一部分,因此这相当于你的进口:

import (
    "fmt"
    "hello_world/math"
)

大佬总结

以上是大佬教程为你收集整理的Golang导入包全部内容,希望文章能够帮你解决Golang导入包所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签: