[C con Clase] Dos fuentes con las mismas variables

D1e6o! diegogeid en gmail.com
Jue Mar 8 19:39:48 CET 2007


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

El día 8/03/07, Samuel Díaz García <samueldg en arcoscom.com> escribió:
>
> Si el problema es que son variables globales a todo el fuente, quizás (no
> se si esto que voy a decir es específico de C++) declarando las variables
> en sus propios fuentes como "static" pueda ayudarte.
>
> Según recuerdo, haciendo esto el ámbito de las variables globales se
> reduce solo al propio fuente, de esta forma si dichas variables globales
> no son necesarias fuera de dichos fuentes, pues tienes ahí la solución.
>
> Ya nos dices si eso te vale.
>
> Si no te vale, pues no te quedará más remedio que cambiar el nombre en los
> fuentes.
>
> Yo, para estas cosas, lo que normalmente hago es en C, definirme una
> estructura que me contiene las variables globales que voy a necesitar en
> toda la aplicación, de forma que cada aplicación tiene su propia
> estructura de variables globales. Por ejemplo:
>
> en "programa_globales.h":
>
> #ifndef _<programa>_GLOBALES_H_
> #define _<programa>_GLOBALES_H_
> typedef struct <programa>_globals_struct {
>    ...
> } T<programa>Globales;
>
> extern T<programa>Globales vg<programa>;
>
> #endif
>
> en "programa_globales.c":
>
> #include "<programa>_globales.h"
>
> T<programa>Globales vg<programa>;
>
> Salu2
>
> --
> Samuel Díaz García
> ArcosCom Wireless, S.L.L.
>
> CIF: B11828068
> c/ Romero Gago, 19
> Arcos de la Frontera
> 11630 - Cadiz
>
> http://www.arcoscom.com
>
> mailto:samueldg en arcoscom.com
> msn: samueldg en arcoscom.com
>
> Tlfn.: 956 70 13 15
> Fax:   956 70 34 83
>
>
> El Jue, 8 de Marzo de 2007, 10:04, Jandro escribió:
> > No, las fuentes son de C :(
> >
> > Y ademas son programas ya escritos muy largos, que seria bastante
> > complicao de modificarlo, es la unica solucion que se te ocurre?
> >
> > Muchisimas gracias.
> > Saludos.
> >
> >
> > El 07/03/2007, a las 19:01, Steven Davidson escribió:
> >
> >> Hola Jandro,
> >>
> >> El pasado 2007-03-07 17:26:44, Jandro escribió:
> >>
> >> J> Hola a todos.
> >> J> Tengo dos codigos fuentes de libre distribucion que usan algunas
> >> J> variables con los mismos nombres, necesitos unir esas dos
> >> fuentes en
> >> J> una mismo programa, llamando primero a uno y despues a otro.
> >> J> El problema es que al tener las variables los mismos nombres, no me
> >> J> funciona bien y se hace un lio.
> >> J> Como puedo solucionarlo??
> >>
> >> Bajo C++, puedes usar espacios con nombre (namespaces, en inglés)
> >> para solucionar este tipo de problemas. Por ejemplo,
> >>
> >> namespace dist1
> >> {
> >>
> >> #include "dist1.h"
> >>
> >> }
> >>
> >> namespace dist2
> >> {
> >>
> >> #include "dist2.h"
> >>
> >> }
> >>
> >> Ahora puedes usar las entidades bajo un ámbito u otro. Por ejemplo,
> >>
> >> int main()
> >> {
> >>   std::cout << dist1::func( 10 ) + dist2::func( -10 );
> >>   ...
> >> }
> >>
> >>
> >> Espero que esto te ayude.
> >>
> >> Steven
> >> _______________________________________________
> >> Lista de correo Cconclase Cconclase en listas.conclase.net
> >> http://listas.conclase.net/mailman/listinfo/
> >> cconclase_listas.conclase.net
> >> Bajas: http://listas.conclase.net/index.php?gid=2&mnu=FAQ
> >
> >
> > _______________________________________________
> > Lista de correo Cconclase Cconclase en listas.conclase.net
> >
> http://listas.conclase.net/mailman/listinfo/cconclase_listas.conclase.net
> > Bajas: http://listas.conclase.net/index.php?gid=2&mnu=FAQ
> >
>
>
>
> _______________________________________________
> Lista de correo Cconclase Cconclase en listas.conclase.net
> http://listas.conclase.net/mailman/listinfo/cconclase_listas.conclase.net
> Bajas: http://listas.conclase.net/index.php?gid=2&mnu=FAQ
>
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.conclase.net/pipermail/cconclase_listas.conclase.net/attachments/20070308/5240ccd9/attachment.html>


Más información sobre la lista de distribución Cconclase