```go
func abc(){
a := 1
p := &a
return p
}
```
以上在go中可以返回局部指针,而c++不可以,而在go中,这样从局部返回指针,是否符合规范
```go
package main
import "fmt"
var p *int
func abc2(){
var a=1
p=&a
}
func main() {
abc2()
fmt.Println(*p) //输出:1
fmt.Println(*p) //仍然输出:1
}
```
c++中,以上函数abc2()在执行完后,p会成为悬垂指针,而go中正常,在go中,这样是否也规范?
c++不行的,go中正常,现在感觉思维混乱了,求指导。
有疑问加站长微信联系(非本文作者)