Es algo muy "precario".. je pero las veces que lo hice me sirvió y se trata de usar busqueda - reemplazar todo... Guarda una copia y anda reemplazando todas variables que se repiten con otro nombre, ej cuenta cuentaf1, tiempo tiempof1, en uno de los fuentes marcando reemplazar todo automáticamente y el programa debería correr sin problemas tanto antes de unirlo como después... Yo lo hice varias veces... Y bueno, como te dije es muy "precario"... pero funciona de 10... Saludos
<br><br><div><span class="gmail_quote">El día 8/03/07, <b class="gmail_sendername">Samuel Díaz García</b> <<a href="mailto:samueldg@arcoscom.com">samueldg@arcoscom.com</a>> escribió:</span><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
Si el problema es que son variables globales a todo el fuente, quizás (no<br>se si esto que voy a decir es específico de C++) declarando las variables<br>en sus propios fuentes como "static" pueda ayudarte.<br><br>
Según recuerdo, haciendo esto el ámbito de las variables globales se<br>reduce solo al propio fuente, de esta forma si dichas variables globales<br>no son necesarias fuera de dichos fuentes, pues tienes ahí la solución.<br>
<br>Ya nos dices si eso te vale.<br><br>Si no te vale, pues no te quedará más remedio que cambiar el nombre en los<br>fuentes.<br><br>Yo, para estas cosas, lo que normalmente hago es en C, definirme una<br>estructura que me contiene las variables globales que voy a necesitar en
<br>toda la aplicación, de forma que cada aplicación tiene su propia<br>estructura de variables globales. Por ejemplo:<br><br>en "programa_globales.h":<br><br>#ifndef _<programa>_GLOBALES_H_<br>#define _<programa>_GLOBALES_H_
<br>typedef struct <programa>_globals_struct {<br>   ...<br>} T<programa>Globales;<br><br>extern T<programa>Globales vg<programa>;<br><br>#endif<br><br>en "programa_globales.c":<br><br>#include "<programa>_globales.h"
<br><br>T<programa>Globales vg<programa>;<br><br>Salu2<br><br>--<br>Samuel Díaz García<br>ArcosCom Wireless, S.L.L.<br><br>CIF: B11828068<br>c/ Romero Gago, 19<br>Arcos de la Frontera<br>11630 - Cadiz<br><br><a href="http://www.arcoscom.com">
http://www.arcoscom.com</a><br><br>mailto:<a href="mailto:samueldg@arcoscom.com">samueldg@arcoscom.com</a><br>msn: <a href="mailto:samueldg@arcoscom.com">samueldg@arcoscom.com</a><br><br>Tlfn.: 956 70 13 15<br>Fax:   956 70 34 83
<br><br><br>El Jue, 8 de Marzo de 2007, 10:04, Jandro escribió:<br>> No, las fuentes son de C :(<br>><br>> Y ademas son programas ya escritos muy largos, que seria bastante<br>> complicao de modificarlo, es la unica solucion que se te ocurre?
<br>><br>> Muchisimas gracias.<br>> Saludos.<br>><br>><br>> El 07/03/2007, a las 19:01, Steven Davidson escribió:<br>><br>>> Hola Jandro,<br>>><br>>> El pasado 2007-03-07 17:26:44, Jandro escribió:
<br>>><br>>> J> Hola a todos.<br>>> J> Tengo dos codigos fuentes de libre distribucion que usan algunas<br>>> J> variables con los mismos nombres, necesitos unir esas dos<br>>> fuentes en
<br>>> J> una mismo programa, llamando primero a uno y despues a otro.<br>>> J> El problema es que al tener las variables los mismos nombres, no me<br>>> J> funciona bien y se hace un lio.<br>>> J> Como puedo solucionarlo??
<br>>><br>>> Bajo C++, puedes usar espacios con nombre (namespaces, en inglés)<br>>> para solucionar este tipo de problemas. Por ejemplo,<br>>><br>>> namespace dist1<br>>> {<br>>>
<br>>> #include "dist1.h"<br>>><br>>> }<br>>><br>>> namespace dist2<br>>> {<br>>><br>>> #include "dist2.h"<br>>><br>>> }<br>>><br>>> Ahora puedes usar las entidades bajo un ámbito u otro. Por ejemplo,
<br>>><br>>> int main()<br>>> {<br>>>   std::cout << dist1::func( 10 ) + dist2::func( -10 );<br>>>   ...<br>>> }<br>>><br>>><br>>> Espero que esto te ayude.<br>>>
<br>>> Steven<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/">
http://listas.conclase.net/mailman/listinfo/</a><br>>> cconclase_listas.conclase.net<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>><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><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></blockquote>
</div><br>