1 penzi 108 天前 var + & 你看来很正常,但是十多年前写 C/C++的人应该会非常不习惯这么写 |
![]() | 3 wuhunyu 108 天前 只能 new(T)了吧,还有其它用法吗 |
4 strobber16 108 天前 不是最初场景,但是我写泛型的时候会用到 func IsZero[T comparable](a T) bool { return a == *new(T) } |
5 FrankAdler 108 天前 via Android var 出来的指针型是 nil ,mew 的是零值 这种问题随便找个 ai 问下就行了:go 的 new 关键字 有什么不可替代的场景 |
6 Miranquil 108 天前 ![]() @FrankAdler 确切的说是 new 出来的是一个指向目标类型零值的指针。 |
![]() | 7 wangritian 107 天前 @FrankAdler 楼主提到的&就是为了覆盖你说的场景 |
8 lovelylain 107 天前 via Android new(T)场景也能被 var+&代替,只是能省一行代码。 |
![]() | 10 gigishy 107 天前 via iPhone 作为明示内存分配且并不赋值是个很不错的好习惯,一目了然。 |
11 kevinxzhao 107 天前 好像没有什么是必须这样写的。 |
12 dobelee 107 天前 new 我经常用,用来强调变量是零值。不重要的变量才用&,比如 resp 。 var 很少用,除非强调数据类型,比如 bool 。 |