Go で構造体のサイズを決定する方法
Go の unsafe パッケージには、値のサイズをバイト単位で返す Sizeof メソッドが用意されています。 。たとえば、以下で定義されている Coord3d 構造体のサイズを確認するには、次のコードを使用できます:
import "unsafe" type Coord3d struct { X, Y, Z int64 } func main() { fmt.Println(unsafe.Sizeof(Coord3d{})) }
ただし、構造体のサイズには、その構造体が参照するメモリは含まれないことに注意することが重要です。フィールド。たとえば、構造体にスライスが含まれている場合、Sizeof メソッドは、スライスによって参照されるメモリのサイズではなく、スライス記述子のサイズを返します。
構造体のサイズを手動で計算する
Sizeof メソッドの使用に加えて、次のようにして構造体のサイズを手動で計算することもできます。 rules:gostructsize.appspot.com. などのサービスを使用して計算を検証できます。
以上がGo 構造体のサイズを計算するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。