本文探讨在Go语言项目中,如何在一个包内不同文件间调用函数,特别是小写(非导出)函数。 假设我们有一个名为gin_demo的项目,结构如下:
gin_demo ├── app │ └── blog │ ├── handler.go │ └── router.go ├── go.mod ├── go.sum ├── main.go └── routers └── routers.go
main.go文件引入gin_demo/app/blog包,并使用router.go中导出的函数。 现在,我们需要在app/blog/router.go中调用handler.go中的ahandler和bhandler函数。
router.go文件内容:
package blog import ( "github.com/gin-gonic/gin" ) func Routers(e *gin.Engine) { e.GET("/a", ahandler) // 注意是小写 ahandler e.GET("/b", bhandler) // 注意是小写 bhandler }
关键在于:在同一个Go包内,无需使用import语句就能访问包内定义的所有函数和变量,无论其是否为大写开头(导出)。
立即学习“go语言免费学习笔记(深入)”;
因此,router.go可以直接调用handler.go中的ahandler和bhandler函数,即使它们是小写字母开头。 不需要任何额外的导入操作。
这种Go语言的包机制简化了同包文件间的函数调用,提高了代码的可维护性和可读性。
以上就是在Go语言中,同包文件如何互相调用小写函数?的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号