err := rpc.RegisterName("hello", new(Hello)) lisening, err := 1,rpc.RegisterName("hello", new(Hello))为什么可以2次声明err

err := rpc.RegisterName("hello", new(Hello)) lisening, err := 1,rpc.RegisterName("hello", new(Hello))为什么可以2次声明err
张家俊
2025年02月04日
|
浏览 172

这段代码中的 err 是使用短变量声明方式(:=)声明的,这种方式会在声明新的变量时,如果有已经声明过的同名变量,则会报错。但是在这段代码中,第二次声明的 err 并不会报错,这是因为第一次声明的 err 只在第一个表达式中有效,在第二个表达式中并不存在同名变量,所以可以成功声明。

我要提问
复制内容
分享给好友
AI编程问答网 免责声明:
以上内容除特别注明外均来源于网友提问,AI编程问答网回答,权益归原著者所有;