Retour au cours

Allocation mémoire et Allocateurs

Cours complet : Programmation Zig de Zéro à Héros

Gestion de la mémoire en Zig

Zig ne possède pas d'allocateur global par défaut. Vous devez passer un Allocator aux fonctions qui ont besoin d'allouer de la mémoire. C'est ce qu'on appelle la Gestion Explicite des Ressources.

zig const std = @import("std");

pub fn main() !void { var gpa = std.heap.GeneralPurposeAllocator(.{}){}; const allocator = gpa.allocator();

const bytes = try allocator.alloc(u8, 100);
defer allocator.free(bytes);

}

Cela rend très clair où et comment la mémoire est allouée.