IDEA2023.1.3破解,IDEA破解,IDEA 2023.1破解,最新IDEA激活码

Go语言常量

IDEA2023.1.3破解,IDEA破解,IDEA 2023.1破解,最新IDEA激活码

常量是一个简单值的标识符,在程序运行时,不会被修改的量。

常量中的数据类型只能是布尔型、数字型(整数型、浮点型和复数)和字符串型

常量的定义格式:

//const 常量名     类型      值
const identifier [type] = value

可以省略类型说明符[type],因为编译器可以根据变量值来推断其类型。

  • 显式类型定义: const b string = “itbsl”
  • 隐式类型定义: const b = “itbsl”

无论是变量还是常量,不同类型的都不能显式的声明在一行:

var a int, b float32 = 1, 2.4   //编译器不通过
const c int, d float32 = 3, 4.4 //编译器不通过
const c, d float32 = 3, 4 //编译通过(此时c和d都是float32类型)
const c, d = 3, 4.4  //编译通过(此时c是int类型,d是float64类型)

说明:我们可以通过reflect.Typeof(变量名)打印变量或常量的类型

常量可以用len()、cap()、unsafe.Sizeof()常量计算表达式的值。常量表达式中,函数必须是内置函数,否则编译不通过,因为在编译期间自定义函数均属于未知,因此无法用于常量的赋值:

package main

import "unsafe"

const (
    a = "cstxco"
    b = len(a)
    c = unsafe.Sizeof(a)
)
func main() {
    println(a, b, c)
}

62_1.png

iota

iota,特殊常量,可以认为是一个可以被编译器修改的常量。

在每一个const关键字出现时,被重置为0,然后在下一个const出现之前,每出现一次iota,其所代表的数字会自动增加1。iota可以被用作枚举值:

const(
    a = iota
    b = iota
    c = iota
)

第一iota等于0,每当iota在新的一行被使用时,它的值都会自动加1;所以a=0,b=1,c=2,可以简写为如下形式:

const(
    a = iota
    b
    c
)

用法示例:

package main

import "fmt"

func main() {
    const(
        a = iota     //0
        b            //1
        c            //2
        d = "itbsl" //独立值,iota += 1
        e            //itbsl iota += 1
        f = 200      //200  iota += 1
        g            //200 iota += 1
        h = iota     //7,恢复计数
        i            //8
    )

    fmt.Println(a, b, c, d, e, f, g, h, i)
}

输出结果为

0 1 2 itbsl itbsl 200 200 7 8

我们可以把iota理解为const里的行数

const(
    a = iota
    b = iota
    c, d = iota, iota
)
fmt.Println(a, b, c, d)

输出结果为

0 1 2 2

当我们定义常量时,如果多个常量的值相同,后面的常量可以直接不赋值,默认等同于上面已赋值的常量的值

package main

import "fmt"
//当我们定义常量时,如果多个常量的值相同,后面的常量可以直接不赋值,默认等同于上面已赋值的常量的值
const (
    a = "itbsl"
    c
    d
)
func main() {
    fmt.Println(a, c, d)
}

输出结果为

itbsl itbsl itbsl

文章永久链接:https://tech.souyunku.com/?p=33319


Warning: A non-numeric value encountered in /data/wangzhan/tech.souyunku.com.wp/wp-content/themes/dux/functions-theme.php on line 1154
赞(60) 打赏



未经允许不得转载:搜云库技术团队 » Go语言常量

IDEA2023.1.3破解,IDEA破解,IDEA 2023.1破解,最新IDEA激活码
IDEA2023.1.3破解,IDEA破解,IDEA 2023.1破解,最新IDEA激活码

评论 抢沙发

大前端WP主题 更专业 更方便

联系我们联系我们

觉得文章有用就打赏一下文章作者

微信扫一扫打赏

微信扫一扫打赏


Fatal error: Uncaught Exception: Cache directory not writable. Comet Cache needs this directory please: `/data/wangzhan/tech.souyunku.com.wp/wp-content/cache/comet-cache/cache/https/tech-souyunku-com/index.q`. Set permissions to `755` or higher; `777` might be needed in some cases. in /data/wangzhan/tech.souyunku.com.wp/wp-content/plugins/comet-cache/src/includes/traits/Ac/ObUtils.php:367 Stack trace: #0 [internal function]: WebSharks\CometCache\Classes\AdvancedCache->outputBufferCallbackHandler() #1 /data/wangzhan/tech.souyunku.com.wp/wp-includes/functions.php(5109): ob_end_flush() #2 /data/wangzhan/tech.souyunku.com.wp/wp-includes/class-wp-hook.php(303): wp_ob_end_flush_all() #3 /data/wangzhan/tech.souyunku.com.wp/wp-includes/class-wp-hook.php(327): WP_Hook->apply_filters() #4 /data/wangzhan/tech.souyunku.com.wp/wp-includes/plugin.php(470): WP_Hook->do_action() #5 /data/wangzhan/tech.souyunku.com.wp/wp-includes/load.php(1097): do_action() #6 [internal function]: shutdown_action_hook() #7 {main} thrown in /data/wangzhan/tech.souyunku.com.wp/wp-content/plugins/comet-cache/src/includes/traits/Ac/ObUtils.php on line 367