中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Go語言中類型別名和自定義類型的示例分析

發布時間:2021-12-24 17:29:10 來源:億速云 閱讀:215 作者:小新 欄目:數據庫

這篇文章主要介紹Go語言中類型別名和自定義類型的示例分析,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!

Go語言中沒有類的概念,也不支持“類”的繼承等面向對象的概念。
Go語言中通過結構體的內嵌再配合接口,比面向對象具有更高的擴展性和靈活性。
1.類型別名和自定義類型
1.1自定義類型
在Go語言中有一些基本的數據類型,如string,整型,浮點型,布爾等數據類型,Go語言中可以使用type關鍵字來定義自定義類型。
自定義類型是定義了一個全新的類型。我們可以基于內置的基本類型定義,也可以通過struct定義。

//將MyInt定義為int類型
type MyInt int

通過Type關鍵字的定義,MyInt就是一種新的類型,它具有int的特性。
1.2類型別名
類型別名是Go1.9版本添加的新功能。
類型別名規定:TypeAlias只是Type的別名,本質上TypeAlias與Type是同一個類型。就像我們的英文名,乳名,但這些名字都指的是一個人。

type TypeAlias = type

我們之前見過的rune和byte都是類型別名,他們的定義如下:
type byte = uint8
type rune = int32
1.3類型定義和類型別名的區別
類型別名與類型定義,表面上看只有一個等號的差異,我們可以通過下面的代碼來查看他們的區別。

package main

import "fmt"

type NewInt int
type MyInt = int
func main() {
 var a NewInt
 var b MyInt
 fmt.Printf("type of a:%T\n",a)
 fmt.Printf("type of b:%T\n",b)
}

結果:
type of a:main.NewInt
type of b:int

Process finished with exit code 0

結果顯示a的類型是main.NewInt,表示main包下定義的NewInt類型。
b類型是int。MyInt類型只會在代碼中存在,編譯完成時并不會有MyInt類型。

以上是“Go語言中類型別名和自定義類型的示例分析”這篇文章的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

天镇县| 德惠市| 马公市| 丽水市| 宿迁市| 永吉县| 北海市| 西丰县| 天全县| 顺昌县| 桂平市| 镇坪县| 渭南市| 雅江县| 宁河县| 济宁市| 翼城县| 舒城县| 宾阳县| 平昌县| 措勤县| 罗定市| 石首市| 肇庆市| 保康县| 休宁县| 文安县| 四川省| 望城县| 凤阳县| 阿拉尔市| 宝鸡市| 綦江县| 年辖:市辖区| 冷水江市| 淮滨县| 永仁县| 延寿县| 泾川县| 奉化市| 宁德市|