博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Go 变量
阅读量:4189 次
发布时间:2019-05-26

本文共 806 字,大约阅读时间需要 2 分钟。

目录


 

什么是变量

使用一个名称来绑定一块内存地址,该内存地址中存放的数据类型由定义变量时指定的类型决定,该内存地址里面存放的内容可以改变。

 

变量命名规范

  • 由大小写字母、数字和下划线组成(Unicode字符也可以作为变量名,但不推荐这样使用)
  • 变量名必须以字母开头
  • 推荐使用驼峰的命名规范命名变量名

 

变量声明

显式的完整声明

声明语法

var 
[=
]

在上面的声明语法中,var关键字用于变量声明。variableName是自定义的变量名称标识符,而type是变量对应的数据类型。可选的value是变量的初始值,初始值可以是字面量,也可以是其它变量名,还可以是一个表达式。如果不指定初始值,Go默认将该变量初始化为类型的零值。

示例

下面的例子中,声明一个整型变量number,且number变量的初始值为1。

var number int = 23

短类型声明

声明语法

:=

短类型声明只能用在函数和方法内,Go编译器会根据 ":="右边的值进行类型推断。

示例

例如在函数中声明一个变量。

func demo() {    a := 1    // do something...}

 

变量值

变量实际指向的是地址里存放的值,变量的值具体怎么解析是由变量的类型来决定的。在初始化变量值时,我们可以使用字面量,也可以使用其它的变量名。

 

存储

Go编译器使用逃逸技术能够自动为变量分配空间。存储空间可能在栈上,也可能在堆上。

 

生命周期

Go提供自动内存管理,通常Go的使用者无需关注变量的生命周期。

 

类型

Go是强类型静态语言,每个变量都对应一个类型。类型决定了变量存储的值的解析方式、支持的操作和运算集。

 

作用域

Go内部使用统一的命名空间对变量进行管理,每个变量都有一个唯一的名字,包名是这个名字的前缀。

转载地址:http://bjsoi.baihongyu.com/

你可能感兴趣的文章
两个链表的第一个公共结点
查看>>
二叉树的深度
查看>>
MySQL数据库入门(三)
查看>>
MySQL数据库入门(四)
查看>>
关于方法覆盖和属性覆盖的问题?
查看>>
JAVA中ListIterator和Iterator详解
查看>>
目标和
查看>>
跳跃游戏
查看>>
买卖股票的最佳时机 II
查看>>
分发饼干
查看>>
最低票价
查看>>
删列造序
查看>>
使括号有效的最少添加
查看>>
令牌放置
查看>>
回溯法思想
查看>>
子集和问题
查看>>
旅行售货员问题
查看>>
区域和检索 - 数组不可变
查看>>
整数分解
查看>>
最长有效括号
查看>>