摘要: 最近写代码的时候发现编译器老是会给 switch v.(type) 一个简化提醒 could eliminate type assertions in switch cases,于是尝试根据提醒优化了一下: switch v := v.(type) { case int: m[k] = v * 2 阅读全文
posted @ 2023-04-30 09:50 绯狱丸丶 阅读(38) 评论(0) 推荐(0) 编辑
摘要: 在接口上调用方法时,必须有和方法定义时相同的接收者类型或者是可以根据具体类型 P 直接辨识的: 指针方法可以通过指针调用 值方法可以通过值调用 接收者是值的方法可以通过指针调用,因为指针会首先被解引用 接收者是指针的方法不可以通过值调用,因为存储在接口中的值没有地址 将一个值赋值给一个接口时,编译器 阅读全文
posted @ 2023-04-28 15:49 绯狱丸丶 阅读(88) 评论(0) 推荐(0) 编辑
摘要: 将切片 b 的元素追加到切片 a 之后:a = append(a, b...) 复制切片 a 的元素到新的切片 b 上: b = make([]T, len(a)) copy(b, a) 删除位于索引 i 的元素:a = append(a[:i], a[i+1:]...) 切除切片 a 中从索引 i 阅读全文
posted @ 2023-04-26 17:05 绯狱丸丶 阅读(252) 评论(0) 推荐(0) 编辑
摘要: 看到一个问题感觉很神奇啊,按照以前 Java 或者其他的语言惯例,函数执行完毕后再去引用函数内定义的变量应该会出问题,但是 go 好像不是这个样子,当函数执行完毕退出后,携程中依旧能够正常使用闭包捕获的变量,如: package main import ( "fmt" ) type mystruct 阅读全文
posted @ 2023-04-25 20:31 绯狱丸丶 阅读(24) 评论(0) 推荐(0) 编辑
摘要: https://www.jianshu.com/p/c02d8b335495 阅读全文
posted @ 2022-01-11 09:52 绯狱丸丶 阅读(112) 评论(0) 推荐(0) 编辑
摘要: 0x00 安装 在项目中使用到了 nodejs ,但是电脑上安装的版本与项目需要的版本又不一样,并且不想重装。这个时候了解到一款可以在电脑上支持并管理多个 nodejs 版本的工具 nvm ,点击下载并解压安装(傻瓜式安装,无需多言)。注意安装目录不要有中文!! 0x01 使用 安装完成后管理员身份 阅读全文
posted @ 2022-01-05 11:25 绯狱丸丶 阅读(57) 评论(0) 推荐(0) 编辑
摘要: 0x00 defer 是啥 用一段简单的代码演示 package main import ( "fmt" ) func main() { defer fmt.Println("this defer fmt!!") fmt.Println("this is normal fmt!!") } 以上代码的 阅读全文
posted @ 2021-12-22 19:26 绯狱丸丶 阅读(294) 评论(0) 推荐(0) 编辑
摘要: 0x00 问题详情 当在 vscode 配置 golang 环境时,会出现如下报错 A connection attempt failed because the connected party did not properly respond after a peri 这个经过测试,不是网络问题, 阅读全文
posted @ 2021-12-16 10:29 绯狱丸丶 阅读(638) 评论(0) 推荐(0) 编辑
摘要: 写在前面 原文出处,原文大佬讲的很细致明了,此文相当于读书笔记 0x00 数据 拷贝的概念用于引用数据类型(真实的数据存放在堆内存当中),浅拷贝类似于变量的赋值,只是将内部的值 copy 一份,但并不要将浅拷贝的理解止步于此,不然会出问题的! 程序中的数据可以分为两类: 基本数据类型:也即常见的 i 阅读全文
posted @ 2021-12-14 11:27 绯狱丸丶 阅读(44) 评论(0) 推荐(0) 编辑
摘要: 写在前面 一直有想要了解数据库索引相关问题的想法,但是以前用不着,也就只是了解了个大概(懒)。前几天在工作中遇到了重复索引的情况,经过导师的谆谆教诲,这才下定心要搞清楚。 本文内容大部分来自网络搜集,原文出处太多不便一一列出,请见谅,在此感谢各位网络先驱! 0x00 什么是数据库索引 数据库这个东西 阅读全文
posted @ 2021-12-13 11:18 绯狱丸丶 阅读(73) 评论(0) 推荐(0) 编辑