将一些地图定义为:
var valueToSomeType = map[uint8]someType{...}
var nameToSomeType = map[string]someType{...}
Run Code Online (Sandbox Code Playgroud)
我想要一个指向地图地址的变量(不要复制所有变量).我尝试使用:
valueTo := &valueToSomeType
nameTo := &nameToSomeType
Run Code Online (Sandbox Code Playgroud)
但在使用时valueTo[number],它显示
内部编译器错误:var没有类型,init:new
怎么弄?
编辑
另一个问题显示错误.
当您通过值或指针访问另一个结构时有什么区别?
什么时候应该使用它们?
type foo_ struct {
st uint8
nd uint8
}
type bar struct {
rd uint8
foo foo_
}
type barP struct {
rd uint8
foo *foo_
}
Run Code Online (Sandbox Code Playgroud) 我想提出一个异常,因为它是用Python或Java制作的 - 用错误信息完成程序 - .
可以将错误消息返回给父函数:
func readFile(filename string) (content string, err os.Error) {
content, err := ioutil.ReadFile(filename)
if err != nil {
return "", os.ErrorString("read " + filename + ": " + err)
}
return string(content), nil
}
Run Code Online (Sandbox Code Playgroud)
但是我想要在发现错误时完成它.下一个会是正确的吗?
func readFile(filename string) (content string) {
content, err := ioutil.ReadFile(filename)
defer func() {
if err != nil {
panic(err)
}
}()
return string(content)
}
Run Code Online (Sandbox Code Playgroud) 可以举一个关于使用crypto/rand[1]的小例子吗?
该函数Read有一个字节数组作为参数。为什么?如果它访问/dev/urandom以获取随机数据。
func Read(b []byte) (n int, err os.Error)
Run Code Online (Sandbox Code Playgroud)