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

como elminar elementos de un array

Estas en el tema de como elminar elementos de un array en el foro de C/C++ en Foros del Web. soy nuevo en programacion y en c++, alguien me podria explicar como puedo borrar un elemento de un array???...
  #1 (permalink)  
Antiguo 19/11/2006, 16:39
 
Fecha de Ingreso: noviembre-2006
Mensajes: 3
Antigüedad: 18 años
Puntos: 0
como elminar elementos de un array

soy nuevo en programacion y en c++, alguien me podria explicar como puedo borrar un elemento de un array???
  #2 (permalink)  
Antiguo 19/11/2006, 16:54
 
Fecha de Ingreso: abril-2005
Mensajes: 3.083
Antigüedad: 19 años, 7 meses
Puntos: 17
Un array es estático, ni se quita ni se pone nada. Tú necesitas un vector.

Usa std::vector.
  #3 (permalink)  
Antiguo 19/11/2006, 16:56
 
Fecha de Ingreso: noviembre-2006
Mensajes: 3
Antigüedad: 18 años
Puntos: 0
tienes razonme equivoque
me puedes decir como elimino un elemento de un vector???
  #4 (permalink)  
Antiguo 19/11/2006, 17:31
 
Fecha de Ingreso: abril-2005
Mensajes: 3.083
Antigüedad: 19 años, 7 meses
Puntos: 17
std::vector<T>::iterator erase(std::vector<T>::iterator);
  #5 (permalink)  
Antiguo 20/11/2006, 12:11
Avatar de Instru  
Fecha de Ingreso: noviembre-2002
Ubicación: Mexico
Mensajes: 2.751
Antigüedad: 22 años
Puntos: 52
vamos, si es nuevo en c++ crees que entendera eso?
saludos
  #6 (permalink)  
Antiguo 20/11/2006, 12:18
 
Fecha de Ingreso: abril-2005
Mensajes: 3.083
Antigüedad: 19 años, 7 meses
Puntos: 17
Cita:
Iniciado por Instru Ver Mensaje
vamos, si es nuevo en c++ crees que entendera eso?
saludos
Él sabrá, pero debería: me ha pedido que qué debe usar para eliminar un elemento de un std::vector, y ésa es la declaración de la función.

Si está usando ya un std::vector, sabrá qué es un iterator, <T>, etc.
  #7 (permalink)  
Antiguo 20/11/2006, 12:26
Avatar de Instru  
Fecha de Ingreso: noviembre-2002
Ubicación: Mexico
Mensajes: 2.751
Antigüedad: 22 años
Puntos: 52
Pues no se, pero lo que pregunta se me figura a cosas que he oidod e lenguajes de scripts donde borras elementos de arrays tal y como el dice, cosa que en C ni en C++ se peude asi namas como asi.

saludos
  #8 (permalink)  
Antiguo 20/11/2006, 12:32
 
Fecha de Ingreso: abril-2005
Mensajes: 3.083
Antigüedad: 19 años, 7 meses
Puntos: 17
Cita:
Iniciado por Instru Ver Mensaje
Pues no se, pero lo que pregunta se me figura a cosas que he oidod e lenguajes de scripts donde borras elementos de arrays tal y como el dice, cosa que en C ni en C++ se peude asi namas como asi.

saludos
En C no, pero en C++ existen los vectores (lo más cercano a arrays dinámicos), de la súper-pero-infravalorada-STL.

Y esá es la función para borrar un elemento dado un iterator que le apunte. ;) Dado que él ha afirmado que estaba usando "std::vector", pues no tiene más... Además, no hay más "arrays dinámicos" en C++.
  #9 (permalink)  
Antiguo 23/11/2006, 20:35
 
Fecha de Ingreso: noviembre-2006
Mensajes: 3
Antigüedad: 18 años
Puntos: 0
no entiendo nada de std iterator y todo lo q me dijeron pero igualmente gracias, alguien me podria explicar en palabras mas de principiante??
  #10 (permalink)  
Antiguo 24/11/2006, 00:53
 
Fecha de Ingreso: abril-2005
Mensajes: 3.083
Antigüedad: 19 años, 7 meses
Puntos: 17
Cita:
Iniciado por spidfer Ver Mensaje
no entiendo nada de std iterator y todo lo q me dijeron pero igualmente gracias, alguien me podria explicar en palabras mas de principiante??
Si no entiendes lo que es un std::vector, ¿para qué pides nada acerca de él?

No, no te lo podemos explicar, no es la misión de este foro explicar sino resolver dudas puntuales.
  #11 (permalink)  
Antiguo 24/11/2006, 14:48
Avatar de spike_jr  
Fecha de Ingreso: febrero-2005
Ubicación: Valencia
Mensajes: 114
Antigüedad: 19 años, 9 meses
Puntos: 2
Cita:
Si no entiendes lo que es un std::vector, ¿para qué pides nada acerca de él?

No, no te lo podemos explicar, no es la misión de este foro explicar sino resolver dudas puntuales.
Nadie dice que aki no se pueden explicar cosas que no entiende la gente. No es que debas de hacer un tutorial, pero x lo menos haz criticas más constructivas y deja por lo menos una referencia para que pueda informarse.

Cita:
soy nuevo en programacion y en c++, alguien me podria explicar como puedo borrar un elemento de un array???
Responder Con Cita
No se hasta donde tienes idea de lo que es un array. Pero aqui te dejo un par de webs que pueden aclararte algo. Aunque debes saber, como bien ha dixo MaxExtreme, que un array es estático y no se pueden borrar elementos. Me explico:

int array[10]; //Esto es un array de 10 enteros

Cuando declaras esto, siempre vas a tener 10 elementos, no puedes quitar. Lo que puedes hacer, por ejemplo, es considerar que si un elemento es igual a cero es que esta vacio. Por ejemplo:

array[1] = 0; //el elemento 2 esta vacío (empezando de cero)

Por otra parte están los vectores, que són dinámicos, que tienen mas complicación.

Ayuda: http://www.conclase.net/c/curso/index.php?cap=010


Saludos
__________________
Cita:
"La programación es una carrera entre ingenieros de software luchando para construir programas cada vez más grandes, mejores y a prueba de idiotas, y el universo intentando producir cada vez más grandes y mejores idiotas. Por ahora, gana el universo." by Rich Cook
  #12 (permalink)  
Antiguo 24/11/2006, 15:20
 
Fecha de Ingreso: abril-2005
Mensajes: 3.083
Antigüedad: 19 años, 7 meses
Puntos: 17
Cita:
Iniciado por spike_jr Ver Mensaje
Nadie dice que aki no se pueden explicar cosas que no entiende la gente. No es que debas de hacer un tutorial, pero x lo menos haz criticas más constructivas y deja por lo menos una referencia para que pueda informarse.
Vamos a ver cómo explico esto: Le he dicho que usase std::vector, y me dijo que eso era -precisamente- lo que estaba usando, que se había confundido, citándole:

Cita:
me puedes decir como elimino un elemento de un vector???
Entonces, le puse la definición de la función que pedía, tal cual. Sólo es usarla en el código.

Al problema es que -como antes había afirmado- no sabía manejar un std::vector. Lo que pasa es que nos pasamos de listos y sólo queremos código hecho.
  #13 (permalink)  
Antiguo 24/11/2006, 15:24
Avatar de spike_jr  
Fecha de Ingreso: febrero-2005
Ubicación: Valencia
Mensajes: 114
Antigüedad: 19 años, 9 meses
Puntos: 2
Cita:
Vamos a ver cómo explico esto: Le he dicho que usase std::vector, y me dijo que eso era -precisamente- lo que estaba usando, que se había confundido.
Creo que no sabe la diferencia entre un vector y un array, ni tampoco tiene idea de las stl.

Cita:
Al problema es que -como antes había afirmado- no sabía manejar un std::vector. Lo que pasa es que nos pasamos de listos y sólo queremos código hecho.
En eso estoy de acuerdo contigo.
__________________
Cita:
"La programación es una carrera entre ingenieros de software luchando para construir programas cada vez más grandes, mejores y a prueba de idiotas, y el universo intentando producir cada vez más grandes y mejores idiotas. Por ahora, gana el universo." by Rich Cook
  #14 (permalink)  
Antiguo 24/11/2006, 16:42
 
Fecha de Ingreso: abril-2005
Mensajes: 3.083
Antigüedad: 19 años, 7 meses
Puntos: 17
Cita:
Iniciado por spike_jr Ver Mensaje
Creo que no sabe la diferencia entre un vector y un array, ni tampoco tiene idea de las stl.
Ciertamente. Al fin y al cabo... A preguntas inteligentes (él "sabía" lo que era un vector), respuestas directas ;)
  #15 (permalink)  
Antiguo 10/12/2006, 07:06
Avatar de ^VaLkiRia^  
Fecha de Ingreso: diciembre-2006
Mensajes: 1
Antigüedad: 17 años, 11 meses
Puntos: 0
Re: como elminar elementos de un array

Para eliminar un elemento de un vector tienes que desplazar el resto de los valores del mismo. Usa para ello por ejemplo un for y asignas v[i+1] a v[i] hasta los elementos cargados.
  #16 (permalink)  
Antiguo 10/12/2006, 08:53
 
Fecha de Ingreso: abril-2005
Mensajes: 3.083
Antigüedad: 19 años, 7 meses
Puntos: 17
Re: como elminar elementos de un array

Cita:
Iniciado por ^VaLkiRia^ Ver Mensaje
Para eliminar un elemento de un vector tienes que desplazar el resto de los valores del mismo. Usa para ello por ejemplo un for y asignas v[i+1] a v[i] hasta los elementos cargados.
Qué pena que eso no elimine elementos de un array sino que destruya la información de uno de ellos.
  #17 (permalink)  
Antiguo 10/12/2006, 10:43
Avatar de Instru  
Fecha de Ingreso: noviembre-2002
Ubicación: Mexico
Mensajes: 2.751
Antigüedad: 22 años
Puntos: 52
Re: como elminar elementos de un array

Jaja. Se quiso hacer pasar por el que podia ayudar mas cuando la ayuda ya estaba dada.

Saludos
  #18 (permalink)  
Antiguo 01/12/2008, 14:17
 
Fecha de Ingreso: diciembre-2008
Mensajes: 1
Antigüedad: 15 años, 11 meses
Puntos: 0
Respuesta: Re: como elminar elementos de un array

Cita:
Iniciado por ^VaLkiRia^ Ver Mensaje
Para eliminar un elemento de un vector tienes que desplazar el resto de los valores del mismo. Usa para ello por ejemplo un for y asignas v[i+1] a v[i] hasta los elementos cargados.
bueno pues a mi me sirvio mucho este comentario, era lo que estaba buscando!
gracias!
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

SíEste tema le ha gustado a 1 personas (incluyéndote)




La zona horaria es GMT -6. Ahora son las 13:52.