unsafe

go语言原则上不允许两个不同指针类型的值,例如 int64和 float64转换。

var a int64=64
an:=&a
b:=(*float64)(an)

这里会报错:cannot convert an (type *int64) to type *float64

Pointer主要适用于简单类型,如int,string,float等,对复杂的类型,比如:struct就不适用,得用type assertion类型断言来实现。
在gohello工程下建一个util的包,然后建一个mystruct的go文件,建一个user的struct

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • rljs by sennchi Timeline of History Part One The Cognitiv...
    sennchi阅读 12,129评论 0 10
  • 阅读原文 golang unsafe 包 ArbitraryType 和 Pointer Go 语言是强类型语言,...
    小小小超子阅读 4,847评论 2 0
  • 我喜欢背上简单的行囊 来一场说走就走的旅行 旅途中 有你有我 有不同人不同的人生 我喜欢追逐自由 自由地张开臂膀 ...
    乐筱阅读 3,602评论 4 8
  • 雪落红梅枝头俏, 徒看玉人回眸笑。 眉若黛山翠, 唇似含情醉。 翩若蝶舞漫天飞, 折柳待卿何时归?
    拾荒笔社阅读 3,647评论 0 3
  • 相对于大理,对丽江一直并无多少向往,这次过来,也只是因为新公司TB跟团走罢了。 早晨6点40飞机,凌晨4点半就得起...
    月痕冷阅读 1,943评论 0 1