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

Listas en c++

Estas en el tema de Listas en c++ en el foro de C/C++ en Foros del Web. Hola, compañeros! Soy nuevo por aqui y espero colaborar en todo lo que pueda. En fin, como bien dice el tema de mi post voy ...
  #1 (permalink)  
Antiguo 01/04/2010, 05:00
 
Fecha de Ingreso: abril-2010
Mensajes: 3
Antigüedad: 14 años, 1 mes
Puntos: 0
Listas en c++

Hola, compañeros!
Soy nuevo por aqui y espero colaborar en todo lo que pueda.
En fin, como bien dice el tema de mi post voy a preguntar cosillas sobre listas.
Las listas las declaro asi:
Código:
#include <list>
#include <cstdio>
int _tmain(int argc, _TCHAR* argv[])
{
  std::list<Punto> listaPuntosActuales;
  funcion1( listaPuntosActuales);

}

funcion1(std::list<Punto> listaPuntosActuales)
{
  //devuelve la lista con los valores doblados
}
Me da un error de tipo:
fatal error LNK1120

Bueno mis duda giran en como pasar una LISTA como parámetro, para hacer unos cálculos y variaciones en sus valores.
Habia pensado pasar un puntero a la lista pero tampoco se muy bien como montarmelo.
Espero que alguien me pueda ayudar.
Saludos!!
  #2 (permalink)  
Antiguo 02/04/2010, 02:26
Avatar de jose_desa  
Fecha de Ingreso: marzo-2010
Mensajes: 19
Antigüedad: 14 años, 1 mes
Puntos: 0
Respuesta: Listas en c++

bueno voy a tratar de ayudarte a tu declaracion de lista le hice algunos cambios que te pudieron ver generado el error que dices.

Código C++:
Ver original
  1. #include <list>
  2. #include <cstdio>
  3. using namespace std;
  4. void funcion1(list<int> listaPuntosActuales); //prototipo de funcion
  5.  
  6. int main(int argc, char *argv[])
  7. {
  8.   list<int> listaPuntosActuales;
  9.   funcion1( listaPuntosActuales);
  10.   return 0;
  11. }
  12.  
  13. void funcion1(list<int> listaPuntosActuales)
  14. {
  15.    
  16.   //devuelve la lista con los valores doblados
  17. }
para poder pasar un puntero a una funcion tendrias que modificar lo siguiente en las lineas 4,9 y 13:
void funcion1(list<int> *listaPuntosActuales); //prototipo de funcion * que es un puntero
funcion1(&listaPuntosActuales); // llamada en el main pasas la direccion de la lista con &

void funcion1(list<int> *listaPuntosActuales) // igual que el prototipo
{....

en lugar de <int> puedes usar el tipo de dato del que quieres crear la lista como <char>
si no mal me equivoco asi seria. espero averte ayudado

Última edición por jose_desa; 02/04/2010 a las 11:42 Razón: complementar
  #3 (permalink)  
Antiguo 08/04/2010, 09:14
 
Fecha de Ingreso: abril-2010
Mensajes: 3
Antigüedad: 14 años, 1 mes
Puntos: 0
Respuesta: Listas en c++

Gracias compañero! Voy a probar y ya te cuento!

Venga, un saludo!
  #4 (permalink)  
Antiguo 08/04/2010, 09:46
 
Fecha de Ingreso: abril-2010
Mensajes: 3
Antigüedad: 14 años, 1 mes
Puntos: 0
Respuesta: Listas en c++

Gracias por tu ayuda! Me sirvió muchísimo!

Mira: me lo he montado así, a ver que te parece:
Código C++:
Ver original
  1. #include "stdafx.h"
  2. #include <list>
  3. #include <iostream>
  4.  
  5. int listaOpera(std::list<int> *lista)
  6. {
  7.     std::list<int> listaAux=*lista;
  8.     std::list<int>::iterator it = listaAux.begin();
  9.     while(it!=listaAux.end())
  10.     {
  11.         *it=*it + 1;
  12.         std::cout << *it++;
  13.     }
  14.     return 0;
  15. }
  16.  
  17. int _tmain(int argc, _TCHAR* argv[])
  18. {
  19.     int num;
  20.     std::list<int> lista = std::list<int>();
  21.     lista.push_back(1);
  22.     lista.push_back(2);
  23.     lista.push_back(3);
  24.  
  25.     int res=listaOpera(&lista);
  26.  
  27.     std::cin>>num;
  28.     return 0;
  29. }

Etiquetas: listas
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 20:01.