起因是我的QQ机器人用的框架是zerobot,一套用go语言编写的框架。我发现不会go语言、维护机器人稍微比较困难,于是被迫开始学习go语言。
吐槽
首先是书写规则,go对大花括号要求很严,不按规则用花括号直接报错,原因是设计者想让大家有同一套代码书写规范。
其次go语言的语法很奇怪,学其他语言时,如C、C++、java、C#,我们声明变量直接 int a = 15; go语言不是这样的,他把变量类型写后面:var a int = 15 也不需要分号。
go语言的使用需要从外部导入一堆包来,在整数字符转换上也感觉比较奇怪。比如我们要将字符串转为bool值,它是这样写的:
var s1 string = "true"
var b bool
b, _ = strconv.ParseBool(s1)
返回的是两个值,一个是我们的bool值,另一个是err报错信息(如果有的话),电脑我们不想要error报错,于是就用_表示不接收......怎么说呢,好奇怪。