SoloCodigo

Programación General => C/C++ => Mensaje iniciado por: karina castillo en Miércoles 18 de Marzo de 2009, 03:17

Título: arreglo de tamaño 10
Publicado por: karina castillo en Miércoles 18 de Marzo de 2009, 03:17
Necesito declarar un arreglo de tamaño 10 , y que contenga en cada una de sus celdada un puntero hacia una clase pila y el tamaño de la pila.
si alguien me puede ayudar un poco o darme una idea de como realizarlo le agradeceria!!! gracias!!!
Título: Re: arreglo de tamaño 10
Publicado por: m0skit0 en Miércoles 18 de Marzo de 2009, 10:01
Bienvenida al foro

Antes de todo aclararte que nadie te va a hacer la tarea sin más.

¿Sabes cómo funciona una pila?
Título: Re: arreglo de tamaño 10
Publicado por: karina castillo en Lunes 23 de Marzo de 2009, 00:27
a lo que entiendo los elementos entran por un extremo y por este mismo salen, existe un tope q conforme entra o sale un elemento cambia, luego que tiene una parte publica y una privada.. en si lo que no entiendo es como ubicar el puntero en la celdas del arreglo.
eso es lo q aun no he logrado captar, si podrias explicarme un poco te lo agradeceria..
Título: Re: arreglo de tamaño 10
Publicado por: m0skit0 en Lunes 23 de Marzo de 2009, 09:38
Muy sencillo:

Código: C++
  1. class cVectorPilas
  2. {
  3.     private:
  4.         void *pila;
  5.         int elementos_pila;
  6.     public:
  7.         //Aquí irían los métodos para manipular los atributos privados pila y elementos_pila
  8. }
  9.  
  10. cVectorPilas vector[10];
  11.  
  12.  
Ten en cuenta que he puesto void *pila porque no sé cómo está declarada tu pila. Deberías cambiar void por la clase que corresponda. Siempre mantén en tu mente que un puntero no es más que un int especial, que realmente es una dirección de memoria: apunta al lugar realmente se encuentran los datos.

Salud
Título: Re: arreglo de tamaño 10
Publicado por: fachamix en Lunes 23 de Marzo de 2009, 12:26
una estructura (struct tutipo) tambien ayudaria.
Título: Re: arreglo de tamaño 10
Publicado por: m0skit0 en Lunes 23 de Marzo de 2009, 16:05
Cita de: "fachamix"
una estructura (struct tutipo) tambien ayudaria.
Si va a usar C++ y programación orientada a objetos, que se centre en las clases. Struct es más de programación estructurada.
Título: Re: arreglo de tamaño 10
Publicado por: fachamix en Martes 24 de Marzo de 2009, 01:09
segun el creador del lenguaje C++ usar una estructura o una clase, no presenta ninguna ventaja   en cuanto a velocidad o eficiencia.

cada uno tiene sus pro y contra pero en velocidad son lo mismo.

no hay herencia en estructuras (que yo sepa), por eso recomiendo que uses clases, yo solo daba otro punto de vista al problema pero si, USA CLASES
Título: Re: arreglo de tamaño 10
Publicado por: karina castillo en Martes 24 de Marzo de 2009, 06:11
muchas gracias por tu ayuda la verdad q me aclaraste un monton. ahora solo implemento los métodos y listo. grcias de nuevo!!!

Cita de: "m0skit0"
Cita de: "fachamix"
una estructura (struct tutipo) tambien ayudaria.
Si va a usar C++ y programación orientada a objetos, que se centre en las clases. Struct es más de programación estructurada.
 gracias tambien por ayudarme!!!
Título: Re: arreglo de tamaño 10
Publicado por: Eternal Idol en Martes 24 de Marzo de 2009, 09:24
Cita de: "fachamix"
segun el creador del lenguaje C++ usar una estructura o una clase, no presenta ninguna ventaja   en cuanto a velocidad o eficiencia.

cada uno tiene sus pro y contra pero en velocidad son lo mismo.

no hay herencia en estructuras (que yo sepa), por eso recomiendo que uses clases, yo solo daba otro punto de vista al problema pero si, USA CLASES

En C++ practicamente no hay diferencia, salvo que por defecto los miembros (y el tipo de herencia) de una estructura son publicos y los de una clase privados (y se soporta la herencia perfectamente).

Differences between struct in C and classes in C++
In C++, a structure is a class defined with the struct keyword.[1] Its members and base classes are public by default. A class defined with the class keyword has private members and base classes by default.

http://en.wikipedia.org/wiki/C%2B%2B_st ... in_C.2B.2B (http://en.wikipedia.org/wiki/C%2B%2B_structures_and_classes#Differences_between_struct_in_C_and_classes_in_C.2B.2B" onclick="window.open(this.href);return false;)
Título: Re: arreglo de tamaño 10
Publicado por: m0skit0 en Martes 24 de Marzo de 2009, 09:39
Pues entonces mejor usar clases y así no tenemos cosas por defecto y las podemos modificar. Además, usando clases el código queda más legible, bonito y encapsulado, ya que las funciones (métodos, ya que es POO) quedan dentro de la clase y por tanto asignadas a los objetos. En fin, cuestiones de gusto sobre programación. Yo siempre que puedo me decanto por POO (C++ en su mayor parte).

Salud
Título: Re: arreglo de tamaño 10
Publicado por: Eternal Idol en Martes 24 de Marzo de 2009, 10:02
Cita de: "m0skit0"
Pues entonces mejor usar clases y así no tenemos cosas por defecto y las podemos modificar. Además, usando clases el código queda más legible, bonito y encapsulado, ya que las funciones (métodos, ya que es POO) quedan dentro de la clase y por tanto asignadas a los objetos. En fin, cuestiones de gusto sobre programación. Yo siempre que puedo me decanto por POO (C++ en su mayor parte).

Salud

Con las clases tambien tenes acceso por defecto, solo que en lugar de public es private (esa es la UNICA diferencia). El codigo queda de la misma manera ya que es perfectamente valido usar exactamente lo mismo que con las clases, como dice ahi arriba un struct es una clase (con sus metodos y propiedades, constructor, destructor ...). Igual es mejor usar clases para evitar confusiones.