<div dir="ltr">He conseguido que funcione correctamente añadiendo la línea loaded=NULL tras usar el operador delete en el método. Pensaba que una vez liberada la memoria dinámica, el puntero quedaba automáticamente asignado a un valor de NULL, pero ya veo que esto no es así, sino que por lo visto se queda apuntando a la misma dirección de memoria, aunque ésta sea ahora inválida.<div style>
Como bien dices, emplear un if antes del delete no es necesario, y en cierto modo es incluso redundante, por lo que he leído.</div><div style>Gracias por la ayuda.</div></div><div class="gmail_extra"><br><br><div class="gmail_quote">
El 17 de mayo de 2013 18:10, Salvador Pozo <span dir="ltr"><<a href="mailto:salvador@conclase.net" target="_blank">salvador@conclase.net</a>></span> escribió:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Hola:<br>
<br>
Creo que el principal problema es que el objeto "loaded" puede ser destruido desde dos sitios dentro de la clase Language, y eso siempre puede producir errores.<br>
<br>
Creo que lo lógico es, como bien dices, eliminar la línea "delete" en la función loadtomem.<br>
<br>
En cualquier caso puedes hacer que el delete del destructor sea condicional, y que se ejecute sólo si el puntero "loaded" es válido.<br>
<br>
Pare eso, después de destruir el objeto dentro de loadtomem, asigna 0 a loaded, y en el destructor de LanguajeFile añade un if:<br>
<br>
if(loaded) delete loaded;<br>
<br>
Aunque esto es opcional, ya que usar el operador delete sobre un puntero nulo no produce ningún efecto.<br>
<br>
Hasta pronto.<br>
<span class="HOEnZb"><font color="#888888"><br>
--<br>
Salvador Pozo (Administrador)<br>
mailto:<a href="mailto:salvador@conclase.net">salvador@conclase.net</a><br>
_______________________________________________<br>
Lista de correo Cconclase <a href="mailto:Cconclase@listas.conclase.net">Cconclase@listas.conclase.net</a><br>
<a href="http://listas.conclase.net/mailman/listinfo/cconclase_listas.conclase.net" target="_blank">http://listas.conclase.net/mailman/listinfo/cconclase_listas.conclase.net</a><br>
Bajas: <a href="http://listas.conclase.net/index.php?gid=2&mnu=FAQ" target="_blank">http://listas.conclase.net/index.php?gid=2&mnu=FAQ</a><br>
</font></span></blockquote></div><br></div>