Created
June 14, 2021 10:15
-
-
Save jeromewu/f999bfb0f2852641a7845892d30d850d to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// The make built-in function allocates and initializes an object of type | |
// slice, map, or chan (only). Like new, the first argument is a type, not a | |
// value. Unlike new, make's return type is the same as the type of its | |
// argument, not a pointer to it. The specification of the result depends on | |
// the type: | |
// Slice: The size specifies the length. The capacity of the slice is | |
// equal to its length. A second integer argument may be provided to | |
// specify a different capacity; it must be no smaller than the | |
// length. For example, make([]int, 0, 10) allocates an underlying array | |
// of size 10 and returns a slice of length 0 and capacity 10 that is | |
// backed by this underlying array. | |
// Map: An empty map is allocated with enough space to hold the | |
// specified number of elements. The size may be omitted, in which case | |
// a small starting size is allocated. | |
// Channel: The channel's buffer is initialized with the specified | |
// buffer capacity. If zero, or the size is omitted, the channel is | |
// unbuffered. | |
func make(t Type, size ...IntegerType) Type |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment