如何在 Go 中声明常量数组(切片)?
大家好!我刚开始学习 Go,在将数组声明为常量时遇到了问题。在其他语言(如 C++ 或 Java)中,我习惯写类似 `const int arr[] = {1, 2, 3};` 这样的代码,并且它能正常工作。但当我尝试在 Go 中做同样的事情时,编译器报错了。\n\n以下是我尝试的代码:\n```go\nconst arr = [3]int{1, 2, 3}\n```\n\n编译器报错:`const initializer [3]int literal is not a constant`。我理解 Go 对常量的要求更严格,但我需要一个不可变的值列表,并且在整个包中可访问。如何正确实现?\n\n我尝试过不同的方法:使用 `var` 代替 `const`,但这样数组可能会被意外修改。也尝试过声明常量切片——`const slice = []int{1, 2, 3}`——但这也不起作用。请问在 Go 中如何声明一个初始化后不可修改的数组,并且能像常量一样使用?是否有特殊的语法或变通方法?