|
|
1
4
当你打电话
那么,range的作用是获取集合中的每个项目
将它们复制到调用时创建的内存位置
这意味着片中的每一个项都被一个一个地放入那个内存位置。
当你这样做的时候
使用创建的所有指针
这意味着在
这就是为什么你得到输出
|
|
|
2
1
这是因为在一种情况下,您将地址传递给struct,而在另一种情况下,您将传递字符串值。因此,每当将Stutt字段附加到一个切片时,它将在同一地址上更新现有值。这就是为什么只获取结构的指针类型切片的最后一个值,即
编辑
这是一片
所以当你在上面循环时,你实际上是在传递
要查看差异,请打印类型,然后您将获得以下信息:
在上面的例子中,您正在创建一个字符串片段。
在第二种情况下,创建
|
|
|
JarochoEngineer · 跳过某些元素映射通过对象 2 年前 |
|
|
alekscooper · 为什么在对列表的切片进行排序时打印“无” 2 年前 |
|
|
starr · 如何剪切数组中对象的字符串属性? 2 年前 |
|
|
moo.duwayne · 保留引用而不将数据分配给实际变量是否安全? 2 年前 |
|
|
Karma_X · 从数据帧中进行切片和提取 2 年前 |
|
|
julien · 如何返回结构中向量的切片 2 年前 |
|
mins · 将常量添加到数组的切片 3 年前 |