# 02-constants - 常量与iota ## 知识点讲解 ### 常量定义 常量使用`const`关键字定义,值在编译时确定且不可修改。 **基本语法**: ```go const PI = 3.14159 const MAX_SIZE = 100 const greeting = "Hello" ``` **批量声明**: ```go const ( STATUS_OK = 200 STATUS_NOT_FOUND = 404 STATUS_ERROR = 500 ) ``` ### iota常量生成器 `iota`是Go语言的特殊常量,在const声明块中,每增加一行`iota`的值自增1(从0开始)。 **基本用法**: ```go const ( A = iota // 0 B = iota // 1 C = iota // 2 ) ``` **简化写法**(首个表达式后后续行省略): ```go const ( A = iota // 0 B // 1 C // 2 ) ``` **表达式模式**: ```go const ( KB = 1 << (10 * iota) // 1 << 0 = 1 MB // 1 << 10 = 1024 GB // 1 << 20 = 1048576 TB // 1 << 30 = 1073741824 ) ``` ### 重要提示 - 常量只能是基本类型:数字、字符串、布尔值 - 常量必须初始化,无法被赋值 - `iota`只可用于const块内 - const块内,每个单独的const声明会重置iota为0 ## 学习目标 完成本练习后,你将: - ✅ 掌握常量的定义方式 - ✅ 理解iota的工作原理 - ✅ 能够使用iota创建枚举值 - ✅ 掌握iota的高级用法(表达式模式) ## 练习说明 打开 `main.go`,根据注释提示填充代码,完成后运行 `go test -v` 验证答案。