
获得徽章 0
- #每天一个知识点# 在Go语言中,赋值操作要求左侧是一个可寻址的变量或者映射的索引。
这个问题通常出现在以下几种情况:
1. 试图给一个非可寻址的值(比如字符串字面量、常量、函数返回值等)赋值。
2. 试图给一个映射的索引赋值,但使用了错误的语法。
错误示例:
s := "hello"
for i := 0; i < len(s); i++ {
s[i] = 'a' // 错误:无法给字符串字面量赋值
}
正确示例:
s := []rune("hello") // 将字符串转换为可寻址的rune切片
for i := 0; i < len(s); i++ {
s[i] = 'a' // 正确:给rune切片的元素赋值
}展开评论点赞 - #每天一个知识点# ● 补了一下算法:先序 中序 后序 遍历
○ 先序 :中 - 左 - 右 从根出发,记忆:绕着树外围转一圈
○ 中序 :左 - 中 - 右 从最左叶节点出发,记忆:将树投影到平面上
○ 后序 :左 - 右 - 中 从最左叶节点出发,记忆:像剪葡萄一样,由下至上一颗一颗剪掉
YuXi_0520 博客文章图做的很好,初学者有兴趣看一下展开评论点赞 - #每天一个知识点# redis 中的事务和传统的关系型数据库的最大区别是:redis不支持回滚(rollback)。redis的事务队列中的某个命令在执行期间出现了错误,整个事务也会继续执行下去,直到所有的命令都执行完毕。
举例:假如 msg 是一个字符串键,对msg执行 RPUSH 列表键的命令。在命令入列时,redis并不能检查出错误,只有当队列 EXEC 执行到该命令时才会出错,此时事务会继续执行。
Redis的作者在事务功能的文档中解释说,不支持事务回滚是因为这种复杂的功能和Redis追求简单高效的设计主旨不相符,并且他认为,Redis事务的执行时错误通常都是编程错误产生的,这种错误通常只会出现在开发环境中,而很少会在实际的生产环境中出现,所以他认为没有必要为Redis开发事务回滚功能。展开评论点赞