1
0
mirror of https://github.com/fumiama/go-nd-portal.git synced 2026-06-28 07:00:26 +08:00
This commit is contained in:
源文雨
2022-11-26 00:39:38 +08:00
parent 2dd688a7d9
commit 8743bf9b5d
8 changed files with 361 additions and 0 deletions

21
helper.go Normal file
View File

@@ -0,0 +1,21 @@
package gondportal
import (
"reflect"
"unsafe"
)
// BytesToString 没有内存开销的转换
func BytesToString(b []byte) string {
return *(*string)(unsafe.Pointer(&b))
}
// StringToBytes 没有内存开销的转换
func StringToBytes(s string) (b []byte) {
bh := (*reflect.SliceHeader)(unsafe.Pointer(&b))
sh := (*reflect.StringHeader)(unsafe.Pointer(&s))
bh.Data = sh.Data
bh.Len = sh.Len
bh.Cap = sh.Len
return b
}