function - Go 中是否允许 ++?
问题描述
考虑这个 Go 代码(可以在这里轻松执行):
package main
import "fmt"
func main() {
// initialize an int variable
i := 7
fmt.Printf("%T\n", i) // prints "int"
// runs a simple for loop
for i := 1; i<=5; i++ {
fmt.Printf("Welcome %d times\n",i)
}
fmt.Println(oneLarger(i))
}
// passes arg by VALUE by default
func oneLarger(x int) int {
return x++ // produces compile error
}
对我来说非常有趣的是,当我执行此代码时,它给了我错误“./main.go:23:11: syntax error: unexpected ++ at end of statement”。
当我注释掉第 23 行时,注释运行良好;它根本不抱怨 for 循环中的 i++ 。但是,它不喜欢我函数中的 x++。为什么是这样?Go 中 ++ 运算符的一般规则是什么?
解决方案
推荐阅读
- spring-batch - Spring批量分区master可以读取数据库并将数据传递给workers吗?
- python - 如何使用 Spotify API Python 获取其他用户最近播放的歌曲
- wordpress - 如何添加块编辑器标题字数?
- ruby - 当孩子是文本节点时如何使用 Nori 访问属性值
- java - Oracle 应用程序中的 Libphonenumbers,缺少元数据:/com/google/i18n/phonenumbers/data/
- python - 无法使用 API 获取松弛的用户个人资料信息
- python - Python 请求模块后返回 200 但没有写入数据
- java - 在 java 中初始化 Main() 并寻找替代代码
- c# - Revit API - C# - 太阳和阴影设置 - 计算一年中每小时的太阳方向
- android - 为什么我收到数据库错误的错误:检索数据时权限被拒绝