首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
Frequently Asked Questions中文翻译
huang一帆
创建于2021-05-23
订阅专栏
翻译一下Frequently Asked Questions
暂无订阅
共33篇文章
创建于2021-05-23
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
Frequently Asked Questions:variant types? slice类型转换?
能把[]T转换为[]interface{}吗? 答案是:不能直接转换。这是因为根据语言的规范,这两种类型在内存中的表现并不相同。如果要转的话,就一定需要把slice中的元素单独地一个地个得转化。下面是
Frequently Asked Questions:为什么空值的error和nil并不相等?
在底层,接口都实现了2个元素,类型T和值V,V是一个实实在在的值,比如int,struct,point,甚至接口本身。例如,如果我们在一个接口中,存储int的值为3,这样这个接口结果大致是(T=int
Frequently Asked Questions:为什么类型不实现Equal接口呢?
为什么类型不实现Equal接口呢? 我们来看下面一个例子:一个类型和自己进行比较 和其他多态系统的实现不同,其实上述例子中T并没有实现Equaler,因为T.Equal()的参数类型是T,并不是字面上
Frequently Asked Questions : 重载?接口声明?接口实现?
Go为什么不支持重载方法和运算符? 如果不需要做类型匹配的话方法的调度会十分简单。其他语言的经验告诉我们,虽然一个同样名字的方法有着不同的函数签名实现偶尔会有帮助,但是同样会让人在使用的时候感到困惑。
Frequently Asked Questions : 动态匹配? len? 重载?面向对象?
Go怎么实现动态匹配方法? 实现方法的动态匹配唯一的办法是通过接口interface实现。其余的在struct上或者具体的类型上的方法都是静态的。 为什么len是一个函数而不是一个方法? 我们辩论过这
Frequently Asked Questions : Go为么没有类型继承?
面向对象编程,是最出名的语言模式,而它一直伴随一个话题:不同类型之间的关系定义。Go走了条不同的道路。 Go不采用要求程序员提前声明好两个类型是有
Frequently Asked Questions : Map原子操作?给Go的建议?
Go的map操作为什么不定义为原子操作? 经过漫长的讨论,我们决定maps平常的使用不需要保证多协程的并发安全。而当需要考虑多协程并发安全的时候,往往map是一个更大的数据结构或者计算过程的一部分,这
Frequently Asked Questions : 并发设计? 断言设计?协程设计?
Go为什么基于CSP理论设计并发? 这么多年以来,并发设计和多线程编程变成了“复杂”的代名词。我们认为这一部分是因为诸如Pthreads复杂的设计,一部分也是因为诸如互斥器、条件参数、内存屏障这些过分
Frequently Asked Questions : Go为什么没有异常
我们认为把“异常”(exception)机制设计成一个控制结构(control structure)(PS:理解为闭环是否会好一点?)会让代码变得很复杂,例如常见的try-catch-finally的
Frequently Asked Questions : Go为什么没有泛型
详细可以见issue:https://github.com/golang/go/issues/43651 ,这个issue已经被认同,不出意外的话在Go的1.18版本就能支持泛型了。 Go希望被设计为
Frequently Asked Questions : Go为什么没有一些某某特性?
每一种语言要么会有一些新颖的设计,当然也可能会忽略一些人们喜欢的设计。Go语言设计时希望做到更好的编程体验,更快的编译速度,正交性的概念( orthogonality of concepts),以及能
Frequently Asked Questions : Go的字符标识设计
我们避免过于围绕ASCII来设计Go,我们希望增大标识符的容量大小,至少比7位(bit)的ASCII容量要大。 组合字符(Combining characters)(PS:Unicode标准认为“基字
Frequently Asked Questions : GO有“运行时”设计吗?
Go是有“运行时”库(`runtime`)的,它是每一个Go程序不可缺少的一部分。“运行时”库实现了垃圾回收、并发、栈管理以及其他Go重要的特性。Go的“运行时”库类似于C语言的`libc`库。