Maison >développement back-end >Golang >Comment calculer la taille d'une structure Go ?
Comment déterminer la taille d'une structure dans Go
Le package unsafe de Go fournit une méthode Sizeof qui renvoie la taille d'une valeur en octets . Par exemple, pour déterminer la taille de la structure Coord3d définie ci-dessous, vous pouvez utiliser le code suivant :
import "unsafe" type Coord3d struct { X, Y, Z int64 } func main() { fmt.Println(unsafe.Sizeof(Coord3d{})) }
Cependant, il est important de noter que la taille d'une structure n'inclut pas la mémoire référencée par sa champs. Par exemple, si une structure contient une tranche, la méthode Sizeof renverra la taille du descripteur de tranche, et non la taille de la mémoire référencée par la tranche.
Calcul manuel de la taille de la structure
En plus d'utiliser la méthode Sizeof, vous pouvez également calculer manuellement la taille d'une structure en suivant ces instructions. règles :
Sur la base de ces règles, vous pouvez calculer la taille de n'importe quelle structure en additionnant les tailles de ses champs et en ajoutant tout remplissage nécessaire. Par exemple, la structure Coord3d comporte trois champs int64, chacun ayant un alignement de 8 octets. Par conséquent, la taille de la structure Coord3d est de 24 octets. Vous pouvez vérifier vos calculs en utilisant un service comme gostructsize.appspot.com.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!