首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
XITEHIP
掘友等级
golang php
获得徽章 0
动态
文章
专栏
沸点
收藏集
关注
作品
赞
5
文章 5
沸点 0
赞
5
返回
|
搜索文章
赞
文章( 5 )
沸点( 0 )
golang中反射与接口的关系
在golang中interface底层分析文中分析了接口的底层原理。其中接口的内部结构分两种一种是iface接口,就是有方法的接口,另一种是eface是空接口。不管是哪种都有两个字段:data、_type 代表接口变量的数据和变量类型信息。那它和反射类型有什么关系吗?今天的文章…
golang中的struct
结构体是一种聚合的数据类型,是由零个或多个任意类型的值聚合成的实体,每个值称为结构体的成员。下面分两方面介绍:一个是基础部分,一个是看一下结构体在实际内存中的内存模型。 此创建方式结构体成员顺序不重要。 new出来的是结构体指针。 结构体成员相同,顺序不同不是相同结构体类型。 …
golang中的panic,recover执行过程?
上篇文章golang中defer的执行过程是怎样的?介绍了一下defer的执行过程,本篇是上一篇的引申,主要介绍panic、recover的底层分析,如果没有读过上一篇文章,可以先去读一下在看这篇。 发现是个结构体类型,里面的类型我们在调试代码的时候在去探究具体的含义。 接下来…
golang中interface底层分析
golang中的接口分为带方法的接口和空接口。 带方法的接口在底层用iface表示,空接口的底层则是eface表示。下面我们透过底层分别看一下这两种类型的接口原理。 从以上实现我们发现编译器生成的struct原始数据会复制一份,然后将新的数据地址赋值给iface.data从而生…
golang中defer的执行过程是怎样的?
从输出结果看很像栈的数据结构特性:后进先出(LIFO)。 从以上2部分汇编代码可以看出,函数相关数据放到了SP中且连续。2,发现 defer aaa(int, string)编译器会插入deferproc(SB)函数。 发现这个函数的参数是int32,*funcval。它们两个…
个人成就
文章被点赞
28
文章被阅读
14,615
掘力值
315
关注了
5
关注者
17
收藏集
1
关注标签
2
加入于
2017-07-27