Quick actions

cmd+k|ctrl+k

Navigation

Languages

Slices / Optimize by pre-allocating slice / Essential Go

Snippet info

Language

Go

Visibility

public

Author

kkowalczyk

Created

2019-03-26T10:13:25Z

Updated

2019-03-26T10:13:25Z

package main

import (
	"fmt"
)

func main() {
	s := []byte("123456")
	d := make([]byte, 0, len(s)*4)
	fmt.Printf("d: %p, len: %d, cap: %d\n", d, len(d), cap(d))
	d = append(d, s...)
	fmt.Printf("d: %p, len: %d, cap: %d\n", d, len(d), cap(d))
	d = append(d, s...)
	fmt.Printf("d: %p, len: %d, cap: %d\n", d, len(d), cap(d))
	d = append(d, s...)
	d = append(d, s...)
	fmt.Printf("d: %p, len: %d, cap: %d\n", d, len(d), cap(d))
}
INFO