新聞中心
在 Go語(yǔ)言中,如果想在一個(gè)包里引用另外一個(gè)包里的標(biāo)識(shí)符(如類(lèi)型、變量、常量等)時(shí),必須首先將被引用的標(biāo)識(shí)符導(dǎo)出,將要導(dǎo)出的標(biāo)識(shí)符的首字母大寫(xiě)就可以讓引用者可以訪(fǎng)問(wèn)這些標(biāo)識(shí)符了。

網(wǎng)站建設(shè)哪家好,找成都創(chuàng)新互聯(lián)公司!專(zhuān)注于網(wǎng)頁(yè)設(shè)計(jì)、網(wǎng)站建設(shè)、微信開(kāi)發(fā)、微信小程序開(kāi)發(fā)、集團(tuán)企業(yè)網(wǎng)站建設(shè)等服務(wù)項(xiàng)目。為回饋新老客戶(hù)創(chuàng)新互聯(lián)還提供了鐘山免費(fèi)建站歡迎大家使用!
導(dǎo)出包內(nèi)標(biāo)識(shí)符
下面代碼中包含一系列未導(dǎo)出標(biāo)識(shí)符,它們的首字母都為小寫(xiě),這些標(biāo)識(shí)符可以在包內(nèi)自由使用,但是包外無(wú)法訪(fǎng)問(wèn)它們,代碼如下:
package mypkg
var myVar = 100
const myConst = "hello"
type myStruct struct {
}將 myStruct 和 myConst 首字母大寫(xiě),導(dǎo)出這些標(biāo)識(shí)符,修改后代碼如下:
package mypkg
var myVar = 100
const MyConst = "hello"
type MyStruct struct {
}此時(shí),MyConst 和 MyStruct 可以被外部訪(fǎng)問(wèn),而 myVar 由于首字母是小寫(xiě),因此只能在 mypkg 包內(nèi)使用,不能被外部包引用。
導(dǎo)出結(jié)構(gòu)體及接口成員
在被導(dǎo)出的結(jié)構(gòu)體或接口中,如果它們的字段或方法首字母是大寫(xiě),外部可以訪(fǎng)問(wèn)這些字段和方法,代碼如下:
type MyStruct struct {
// 包外可以訪(fǎng)問(wèn)的字段
ExportedField int
// 僅限包內(nèi)訪(fǎng)問(wèn)的字段
privateField int
}
type MyInterface interface {
// 包外可以訪(fǎng)問(wèn)的方法
ExportedMethod()
// 僅限包內(nèi)訪(fǎng)問(wèn)的方法
privateMethod()
}在代碼中,MyStruct 的 ExportedField 和 MyInterface 的 ExportedMethod() 可以被包外訪(fǎng)問(wèn)。
分享標(biāo)題:創(chuàng)新互聯(lián)GO教程:Go語(yǔ)言導(dǎo)出包中的標(biāo)識(shí)符——讓外部訪(fǎng)問(wèn)包的類(lèi)型和值
本文來(lái)源:http://www.5511xx.com/article/cdhoosh.html


咨詢(xún)
建站咨詢(xún)
