Putting destructor virtual to avoid undefined behavior
Conflict gestion