go語言預先定義標識符有36個,主要包含了基礎資料型別和內建函數,分別是:append、bool、byte、cap、close、complex、complex64、complex128、uint16、copy、FALSE 、float32、float64、imag、int、iota、len、make、new、nil、panic、real、recover、TRUE、uint等等。
本教學操作環境:windows7系統、GO 1.18版本、Dell G3電腦。
go語言中的預定義標識符
#標識符是指Go語言對各種變數、方法、函數等命名時使用的字元序列,標識符由若干個字母、底線_、和數字組成,且第一個字元必須是字母。通俗的講就是凡可以自己定義的名稱都可以叫做識別符。
在Go語言中,除了使用者自訂的標識符,還有一些特殊的標識符,叫做預定義標識符,如下表所示:
append | bool | byte | cap | #close | complex | complex64 | complex128 | uint16 |
copy | false | float32 | #float64 | #imag | int | int8 | int16 | #uint32 |
int32 | ##int64 | iota | len | make | new | #nil | panic | uint64 |
println | real | #recover | string | true | uint | uint8 | uintptr |
預先定義標識符一共有 36 個,主要包含Go語言中的基礎資料類型和內建函數,這些預定義標識符也不可以當做標識符來使用。
擴充知識:
#使用者自訂的識別碼
標識符的組成
標識符由數字、字母和底線(_)組成。 123 abc _
只能以字母和底線(_)開頭。 abc123 _sysVar 123abc
標識符區分大小寫。 name Name NAME
舉例說明標識符的命名
正確的命名
package main func main() { var name string var age int var _sys int }
錯誤的識別碼
package main import "fmt" func main() { var 1name string var &age int var !email }
go語言命名規範
#Go是一門區分大小寫的語言
命名規則涉及變數、常數、全域函數、結構、介面、方法等的命名。 Go語言從語法層面進行了以下限定:任何需要對外暴露的名字必須以大寫字母開頭,不需要對外暴露的則應該以小寫字母開頭。
當命名(包括常數、變數、型別、函數名稱、結構欄位等等)以大寫字母開頭,如:GetUserName,那麼使用這種形式的識別碼的物件就可以被外部包的程式碼所使用(客戶端程式需要先匯入這個包),這被稱為導出(像物件導向語言中的public);命名如果以小寫字母開頭,則對包外是不可見的,但是他們在整個包的內部是可見且可用的(像物件導向語言中的private )
套件名稱
保持package的名字和目錄保持一致,盡量採取有意義的包名,簡短,有意義,盡量和標準庫不要衝突。包名應該為小寫單詞,不要使用底線或混合大小寫。
package dao package service
檔案命名
盡量採取有意義的檔案名,簡短,有意義,應該為小寫單詞,使用下劃線分隔各個單字。
customer_dao.go
結構體命名
採用駝峰命名法,首字母根據存取控制大寫或小寫
struct 申明和初始化格式採用多行,例如下面:
type CustomerOrder struct { Name string Address string } order := CustomerOrder{"tom", "北京海淀"}
介面命名
命名規則基本上和上面的結構體類型
#單一函數的結構名稱以「er」 作為後綴,例如Reader , Writer 。
type Reader interface { Read(p []byte) (n int, err error) }
變數命名
和結構體類似,變數名稱一般遵循駝峰法,首字母根據存取控制原則大寫或小寫,但遇到特有名詞時,需要遵循以下規則:
如果變數為私有,且特有名詞為首個字,則使用小寫,如appService 若變數類型為bool 類型,則名稱應以Has, Is, Can 或Allow 開頭
var isExist bool var hasConflict bool var canManage bool var allowGitHook bool
常數命名
常數均需使用全部大寫字母組成,並使用底線分詞
const APP_URL = "https://www.duoke360.com"
如果是枚舉類型的常數,需要先創建對應類型:
type Scheme string const ( HTTP Scheme = "http" HTTPS Scheme = "https" )
錯誤處理
錯誤處理的原則就是不能丟棄任何有回傳err的調用,不要使用_ 丟棄,必須全部處理。接收到錯誤,要么返回err,或者使用log記錄下來儘早return:一旦有錯誤發生,馬上返回,盡量不要使用panic,除非你知道你在做什麼,錯誤描述如果是英文必須為小寫,不需要標點結尾,採用獨立的錯誤流程進行處理
// 错误写法 if err != nil { // 错误处理 } else { // 正常代码 } // 正确写法 if err != nil { // 错误处理 return // 或者继续 } // 正常代码
單元測試
單元測試檔案名稱命名規範為example_test.go 測試案例的函數名稱必須以Test 開頭,例如:TestExample 每個重要的函數都要先寫測試案例,測試案例和正規程式碼一起提交方便進行回歸測試。
以上是go語言預定義標識符有多少個的詳細內容。更多資訊請關注PHP中文網其他相關文章!