golang 斷言 + 類型轉換


當傳參是接口類型,需要強制類型轉換,

如下:

package main

import "fmt"

type bbc struct {
	a int32
}

func main() {
	k(bbc{a:100})

}

func k(p interface{})  {
	if msg, ok := p.(bbc); ok {
		fmt.Println(msg.a)

	}
}

  或

package main

import "fmt"

type bbc struct {
	a int32
}

func main() {
	k(&bbc{a:100})    // 注意,這里對應的強制轉化類型

}

func k(p interface{})  {
	if msg, ok := p.(*bbc); ok {
		fmt.Println(msg.a)

	}
}

  

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM