簡體   English   中英

[]int16 與 []int64 的 Memory 占用空間

[英]Memory footprint of []int16 vs []int64

一塊 int16 占用的 RAM 會比 int64 少嗎? 或者 []int16 無論如何都會在 64 位機器上分配 []int64 。

切片是對底層數組存儲的引用。

int16的切片只能引用int16的數組。 它可能不引用int64或任何其他類型的數組。

那么正確的問題是, int16數組的大小是否比相同長度的int64數組小?

根據我的實踐經驗,的。 我不知道有任何反例。 不過,我不知道有任何語言規則實際上可以保證它是這樣的。 如果您想在自己的環境中自己測試它,這樣做很簡單:

package main

import (
    "fmt"
    "unsafe"
)

func main() {
    fmt.Println(unsafe.Sizeof([10]int16{}))
    fmt.Println(unsafe.Sizeof([10]int64{}))
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM