- Keys of Maps from Delete() and Free()
}
}
- void Remove(MapNode<MT, V> node)
+ void FreeKey(MapNode<MT, V> node)
{
- CustomAVLTree::Remove(node);
if(class(MT).type == structClass)
{
// TODO: Make this easier...
}
else
delete node.key;
+ }
+
+ void Remove(MapNode<MT, V> node)
+ {
+ CustomAVLTree::Remove(node);
+ FreeKey(node);
delete node;
}
MapNode<MT, V> parent = node.parent;
V value = GetData(node);
delete value;
+ FreeKey(node);
delete node;
node = parent;
{
V value = GetData(node);
delete value;
+ FreeKey(node);
Remove(node);
}