Slice is the runtime representation of a slice. It cannot be used safely or portably and its representation may change in a later release.
Unlike reflect.SliceHeader, its Data field is sufficient to guarantee the data it references will not be garbage collected.
type Slice struct {
    Data unsafe.Pointer
    Len  int
    Cap  int
}
			
			
			
			
			
			
			
		
			
			
			String is the runtime representation of a string. It cannot be used safely or portably and its representation may change in a later release.
Unlike reflect.StringHeader, its Data field is sufficient to guarantee the data it references will not be garbage collected.
type String struct {
    Data unsafe.Pointer
    Len  int
}