总结:

  • slice通过new的方式创建,底层是没有分配内存的,底层是一个nil,指针指向这个nil
  • slice通过make的方式创建,就算长度填写为0,也会分配内存

    new和make创建slice的差别

  1. slice通过new的方式创建,底层是没有分配内存的,底层是一个nil,指针指向这个nil

image.png

  1. slice通过make的方式创建,就算长度填写为0,也会分配内存,数组长度为???

image.png

slice的扩容规则