亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

各種形式的 int 切片的轉換

各種形式的 int 切片的轉換

Go
揚帆大魚 2023-02-14 17:42:17
假設我有這些類型type MyInt inttype Ints []inttype MyInts []MyInt使用這些類型我定義了一些變量var is []intvar ints Intsvar myInts MyInts變量is和ints具有不同的類型,但是編譯器很樂意編譯這一行is = ints類似is并且myInts有不同的類型,但在這種情況下,由于變量的類型不同,因此未編譯以下行is = myInts那么,為什么在第一種情況下類型的差異不會停止 comlilation,而在第二種情況下它會停止呢?這是一個重現案例的簡單游樂場。
查看完整描述

1 回答

?
慕雪6442864

TA貢獻1812條經驗 獲得超5個贊

有效分配的條件之一如下:

V并且T具有相同的基礎類型但不是類型參數并且V 或 T 中至少有一個不是命名類型


變量is的類型[]int未命名類型,它的基礎類型與自身相同,即[]int. 變量的類型ints,即Ints,是一個命名類型,它是底層類型[]int

因此,分配is = ints是有效的。


變量myInts的類型MyInts命名類型,它的基礎類型是[]MyInt. 類型[]MyInt與不相同。[]int

因此,分配is = myInts無效。


查看完整回答
反對 回復 2023-02-14
  • 1 回答
  • 0 關注
  • 112 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號