<html>
<head>
<style>
.hmmessage P
{
margin:0px;
padding:0px
}
body.hmmessage
{
font-size: 10pt;
font-family:Verdana
}
</style>
</head>
<body class='hmmessage'>
Bueeeeeeeeeeeeeeeeeeeeno, vaaaaaaaaaaaaaale., veeeeenga, me quedo con la segunda, sacrificaremos la comodidad por la "funcionalidad", por si aparece en un futuro, <b>C+++</b> <img src="http://gfx2.hotmail.com/mail/w3/ltr/emoticons/smile_regular.gif" alt="" width="19" height="19"> gracias David por las clases y un saludete, chau...<br><br><hr id="stopSpelling">Date: Wed, 24 Jun 2009 09:43:03 -0300<br>From: ddfire@gmail.com<br>To: cconclase@listas.conclase.net<br>Subject: Re: [C con Clase] DUDA CONTENEDOR<br><br>horror!!!!!!!!<br>eso "funciona" pero es un horror....<br>no hay nada que te garantice que eso siempre va a funcionar, MC esta solo dentro del scope de Lista() NADA fuera de Lista() deberia acceder si mañana hacen un compilador mas exigente o que maneja la memoria de alguna otra forma eso deja de funcionar.<br>
mi opinion personal es que hacer que las cosas "funcionen" dista mucho de hacer las cosas bien.<br><br>opcion uno<br><div class="EC_im">Lista(MiContenedor *MC)<br>{ <br>   MC.clear()<br></div>   ... MC[Key]=Data;<br>
   ...<br> }<br><br>Opcion dos<br><div class="EC_im">*MiContenedor Lista()<br>{ <br>  MiContenedor *MC=new MiContenedor ();<br>
   MC->clear()<br>
</div>
   ... (*MC)[Key]=Data;<br>
   ...<br>return MC;   <br>/*devolves un puntero alguien deberia ocuparse de ahcer un delete(MC) cuando no se necesite mas o te vas a quedar sin memoria. */<br>
 }<br>
<br><br><br><br><div class="EC_gmail_quote">El 24 de junio de 2009 08:46, Pedro Rodríguez González <span dir="ltr"><<a href="mailto:sr.whiteskull@hotmail.com">sr.whiteskull@hotmail.com</a>></span> escribió:<br><blockquote class="EC_gmail_quote" style="padding-left: 1ex;">




<div>
Al final<b> me quedé con esta opción</b> (la tercera <img alt="" width="19" height="19"> ) ... <b>y para evitar la sobreescritura usé el "clear"</b> al contenedor, de ésta forma cada vez que se llama el método siempre queda vacío el contenedor... gracias Steve y a David por sus explicaciones... queda así:<b><br>
</b><br><i>// Además así no preocupo de liberar la memoria, todo es automático</i> <br><div class="EC_im">MiContenedor& Lista()<br>{<br>   static MiContenedor MC;<br></div>   MC.clear()<br><br>   ... MC[Key]=Data;<br>   ...<br>
   return MC;<br>}<br><br>The End<br><br>> Date: Tue, 23 Jun 2009 14:31:23 -0400<div class="EC_im"><br>> From: <a href="mailto:srd4121@njit.edu">srd4121@njit.edu</a><br>> To: <a href="mailto:cconclase@listas.conclase.net">cconclase@listas.conclase.net</a><br>
> Subject: Re: [C con Clase] DUDA CONTENEDOR<br>> <br></div><div><div></div><div class="h5">> Hola Pedro,<br>> <br>> Se me olvidó comentar una tercera opción, que tampoco recomiendo. <br>> Consiste en instanciar el objeto local pero estáticamente. Esto es,<br>
> <br>> MiContenedor& Lista()<br>> {<br>>    static MiContenedor MC;<br>>    ...<br>>    return MC;<br>> }<br>> <br>> <b>La desventaja es que 'MC' puede ser sobreescrito en otra invocación y <br>
> por tanto al usar referencias la información aparentará modificada.</b><br>> <br>> <br>> Mi consejo es instanciar otro objeto temporal que es una copia al <br>> retornar el objeto local.<br>> <br>> <br>
> Hasta pronto,<br>> <br>> Steven<br>> <br>> <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">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">http://listas.conclase.net/index.php?gid=2&mnu=FAQ</a><br>
<br></div></div><div class="EC_hm"><hr>Connect to the next generation of MSN Messenger   <a href="http://imagine-msn.com/messenger/launch80/default.aspx?locale=en-us&source=wlmailtagline">Get it now! </a></div>
</div>
<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">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">http://listas.conclase.net/index.php?gid=2&mnu=FAQ</a><br></blockquote></div><br><br clear="all"><br>-- <br> (\__/) <br>(='.'=)This is Bunny. Copy and paste bunny into your <br>
(")_(")signature to help him gain world domination. <br><br><br /><hr />Invite your mail contacts to join your friends list with Windows Live Spaces. It's easy! <a href='http://spaces.live.com/spacesapi.aspx?wx_action=create&wx_url=/friends.aspx&mkt=en-us' target='_new'>Try it!</a></body>
</html>