Foros del Web » Programación para mayores de 30 ;) » C/C++ »

C++: ¿Creación de paquetes? (tipo java)

Estas en el tema de C++: ¿Creación de paquetes? (tipo java) en el foro de C/C++ en Foros del Web. Hola Ahora mismo tengo en C++ un conjunto de clases, estando cada clase formada por un fichero .h y .cpp. Mi duda es, ¿es posible ...
  #1 (permalink)  
Antiguo 28/06/2006, 06:49
Avatar de javimartinez  
Fecha de Ingreso: marzo-2003
Ubicación: Leganés (Madrid)
Mensajes: 284
Antigüedad: 21 años, 9 meses
Puntos: 1
C++: ¿Creación de paquetes? (tipo java)

Hola

Ahora mismo tengo en C++ un conjunto de clases, estando cada clase formada por un fichero .h y .cpp. Mi duda es, ¿es posible hacer algún paquete que incluya a todas las clases (tipo java)? ¿Como se haría?

He estado mirando el uso de la palabra reservada namespace, pero no me aclaro si sirve para hacer paquetes de clases o, por el contrario, solo establece espaciones de nombres y no admite en su interior clases.


En resumen, básicamente lo que me gustaría hacer es algo parecido a lo que en Java se hace con la palabra reservada "package" (por si alguno dominais Java tb)

Gracias y un saludo
__________________
Javi Martínez

Web: Acertijolandia Blog: A Entretenerse
  #2 (permalink)  
Antiguo 28/06/2006, 10:49
 
Fecha de Ingreso: abril-2006
Ubicación: Acapulco Gro. México
Mensajes: 483
Antigüedad: 18 años, 8 meses
Puntos: 2
package y namespace es muy similar, dentro del namespace puedes declara desde constantes, estructuras, funciones y clases.

se crea:

MiNamespace
{
//declaraciones.
}

para usarlo solo usarias :

using namespace MiEspacion;


o anteponer el nombre a los miembros de este espacio

MiEspacio::UnaVaiabledeMiEspacio.

los include de los headers se hace igual.

en C++ no hay las restricciones que creo Java pone.
  #3 (permalink)  
Antiguo 29/06/2006, 03:05
Avatar de javimartinez  
Fecha de Ingreso: marzo-2003
Ubicación: Leganés (Madrid)
Mensajes: 284
Antigüedad: 21 años, 9 meses
Puntos: 1
Gracias por contestar Nivel7 :)

Me he estado mirando un poco más en libros lo de namespace pero no me aclaro del todo. Mi principal duda es: tiene que estar todo declarado junto en el mismo fichero???

Es decir. Yo ahora tengo ficheros del tipo:

Fichero Clase1.h

Código:
class Clase1 {
 ...
}
Fichero Clase2.h

Código:
Class Clase2{
...
}
y así N ficheros con N clases.


Entonces, tengo que juntar todas las declaraciones de clases en un único fichero tipo:

Código:
MiEspacioNombres{

   Class Clase1{
   ...
   }

   Class Clase2{
   ....
   }
}
O por el contrario se puede ir diciendo en cada fichero q pertenece al espacio de nombre MiEspacioNombres??? (tipo java, que con poner la sentencia package al inicio de cada fichero sirve)

Gracias y un saludo
__________________
Javi Martínez

Web: Acertijolandia Blog: A Entretenerse
  #4 (permalink)  
Antiguo 29/06/2006, 11:19
 
Fecha de Ingreso: abril-2006
Ubicación: Acapulco Gro. México
Mensajes: 483
Antigüedad: 18 años, 8 meses
Puntos: 2
Exactamente...

tansolo tienes que indicar en cada fichero que pertenece al espacio de nombres que estas creando.

ficheros:

file1.h

#ifndef FILE1_H
#define FILE1_H

namespace MiEspacio
{
// declaraciones
}
#endif

file2.h

#ifndef FILE2_H
#define FILE2_H

namespace MiEspacio
{
// declaraciones
}
#endif

file3.h

#ifndef FILE3_H
#define FILE3_H

namespace MiEspacio
{
// declaraciones
}
#endif

etc.

Saludos.
  #5 (permalink)  
Antiguo 30/06/2006, 00:03
Avatar de javimartinez  
Fecha de Ingreso: marzo-2003
Ubicación: Leganés (Madrid)
Mensajes: 284
Antigüedad: 21 años, 9 meses
Puntos: 1
ok, muchas gracias :)
__________________
Javi Martínez

Web: Acertijolandia Blog: A Entretenerse
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 18:30.