我有大致這樣的東西type Guid [16]bytetype Payload struct { .... SthGuid [17]byte}func (h *...) Get(guid Guid) (... error) {}我想用 SthGuid 的最后 16 個字節(jié)調(diào)用 Get。例如,Get(PayloadInstance.SthGuid[1:16]))無法將 SthGuid[1:16]([]byte 類型的值)轉(zhuǎn)換為 Guid我正在嘗試調(diào)用 SthGuid[1:] 對第一個字節(jié)進行切片并將最后 16 個字節(jié)用作輸入?yún)?shù)。那樣不行。
1 回答

犯罪嫌疑人X
TA貢獻2080條經(jīng)驗 獲得超4個贊
您可以使用正確的類型復(fù)制數(shù)組,例如:
var guid [16]byte
copy(guid[:], SthGuid[1:16])
Get(guid)
或者,作為 Go 1.17,您可以嘗試使用切片到數(shù)組的轉(zhuǎn)換:
https://tip.golang.org/ref/spec#Conversions_from_slice_to_array_pointer
- 1 回答
- 0 關(guān)注
- 111 瀏覽
添加回答
舉報
0/150
提交
取消