go有引址符&和取址符 *
PHP就一个引址符 &
$a = 1;
$b = &a;
$b++;
echo $c; # 2
func main() {
a := 1
b := &a
*b++
fmt.Println(*b); # 2
}
Q: *
号现在在这里的优点在哪里?如何于php的单独的&
符号做比较呢?
go有引址符&和取址符 *
PHP就一个引址符 &
$a = 1;
$b = &a;
$b++;
echo $c; # 2
func main() {
a := 1
b := &a
*b++
fmt.Println(*b); # 2
}
Q: *
号现在在这里的优点在哪里?如何于php的单独的&
符号做比较呢?
7 回答5.3k 阅读
6 回答6.8k 阅读✓ 已解决
1 回答4.1k 阅读✓ 已解决
3 回答1.9k 阅读✓ 已解决
2 回答2.2k 阅读✓ 已解决
4 回答2.3k 阅读
1 回答3.3k 阅读
二者没有可比性,go中的& 只是个语法糖,意为取地址,php则是取别名
所以go需要先解引用,修改内容,其b是个指针变量
而php这样你或许易理解