Rumah  >  Artikel  >  pembangunan bahagian belakang  >  go语言导包时“.”和“_”的区别是什么?

go语言导包时“.”和“_”的区别是什么?

青灯夜游
青灯夜游asal
2020-12-08 11:47:274163semak imbas

区别:“_”操作其实只是引入该包;使用“_”操作引用包是无法通过包名来调用包中的导出函数,而是只是为了简单的调用其init()函数。“.”操作的含义就是这个包导入之后在你调用这个包的函数时,你可以省略前缀的包名。

go语言导包时“.”和“_”的区别是什么?

本文演示环境:Windows7系统、Go1.11.2版,Dell G3电脑。

相关推荐:《golang教程

在golang进行导入包时,我们有时会遇到包的前面需要加下划线或者点,一直不明白是什么意思,随即进行了搜索:

包前是下划线_:_操作其实只是引入该包。当导入一个包时,它所有的init()函数就会被执行,但有些时候并非真的需要使用这些包,仅仅是希望它的init()函数被执 行而已。这个时候就可以使用_操作引用该包了。即使用_操作引用包是无法通过包名来调用包中的导出函数,而是只是为了简单的调用其init()函数。

包前是点.:

import(.“fmt”)

这个点操作的含义就是这个包导入之后在你调用这个包的函数时,你可以省略前缀的包名,也就是前面你调用的fmt.Println("hello world")可以省略的写成Println("hello world")

导入使用点前:

go语言导包时“.”和“_”的区别是什么?

go语言导包时“.”和“_”的区别是什么?

导入使用点后:

go语言导包时“.”和“_”的区别是什么?

go语言导包时“.”和“_”的区别是什么?

更多编程相关知识,请访问:编程视频!!

Atas ialah kandungan terperinci go语言导包时“.”和“_”的区别是什么?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn