我发现Zig函数参数是常量。这意味着我的释放HashMap
的天真函数不起作用。你可以在这里看到代码示例。我想知道最正确的Zig方式是否是将dict
作为函数传递,或者是否有其他方法可以使参数可变。
const Dict = std.StringHashMap;
fn releaseDict(allocator: Allocator, dict: Dict(i16)) void {
var iter = dict.iterator();
while (iter.next()) |entry|
allocator.free(entry.key_ptr.*);
dict.deinit();
}