• Go by Example-常量


    Go by Example 中文:常量

    在上一节中提到了变量,常用的有两种定义的方式使用var或者短变量的形式进行定义,这节我们来说常量。

    常量

    常量是指程序运行时不可改变的值,常量必须初始化值,定义常量可以指定类型,Go支持字符、字符串、布尔和数值作为常量。 编译器也可以通过常量初始化值做类型推断。

    ⚠️注意:

    在函数代码块中定义常量,不被使用也不会出现编译错误。
    

    Go除了可以定义变量还可以定义常量,Python中并没有定义常量的保留字。
    Go中是关键字const来声明常量的,这在其他语言中也是一样的,比如js,c#。

    最好的理解方法,就是把上一节定义变量的关键字var改为const即可。

    代码示例

    package main
    
    import "fmt"
    
    const name = "zhangsan"
    
    // 常量组的形式
    const (
    	x = 11
    	y  // 在常量组中不指定常量类型和初始化值,会和上一行非空的常量值相同。
    	z
    )
    
    func main() {
    	const a = 1
    	const b = "hehe" //和定义变量的区别,定义了可以不使用。
    	//const name  //必须初始化
    	const c, d = 3, 5 //也支持多个常量赋值
    	const (
    		x1 = 11
    		y1  // 在常量组中不指定常量类型和初始化值,会和上一行非空的常量值相同。
    		z1
    	)
    	fmt.Println(x, y, z)
    	fmt.Println(a)
    	fmt.Println(c, d)
    }
    
    

    补充

    在上节变量的定义中,忘了提变量组了,其实就是类似上面代码常量组,关键词const换成var即可.例如

    	var (
    		a = 11
    		b =12
    		c=13
    	)
    
    

    注意点1: 每行变量声明赋值之后,后面没有逗号。
    注意点2: 变量必须赋值。
    注意点3:定义了必须使用,否则编译器报错。

  • 相关阅读:
    老贴纪念九(蓝色 白色 绿色(前四天))
    进入6月
    老贴纪念七!(敏感:二十年了,而青春从来没有离开过)
    一个关于inet_ntoa的奇怪问题
    一个通用的Makefile模板
    【记录】find+tar命令组合
    Linux SDIO WIFI驱动的编译
    编译静态库和动态库的Makefile文件
    分解成连续数字的和
    linux nc命令示例
  • 原文地址:https://www.cnblogs.com/c-x-a/p/11468112.html
Copyright © 2020-2023  润新知