Test Foro de elhacker.net SMF 2.1

Programación => Programación C/C++ => Mensaje iniciado por: anamnesis_92 en 21 Enero 2012, 19:51 PM

Título: no se declaro en este ambito [SOLUCIONADO]
Publicado por: anamnesis_92 en 21 Enero 2012, 19:51 PM
Hola soy muy novato en c++  y al compilar el siguiente codigo me da error, a ver si me podeis ayudar:


#include <iostream>


class Clase
{
   private:
   int a;

   public:
   void seta(int w){a=w;};
   int geta(){return a;};
};


int funcion();

int main()
{
   Clase clase;
   funcion();
   clase.seta(1);
   return 0;
}


int funcion()
{
   clase.seta(2); ////////////////////////////////////////en esta linea//////////////////////////////////////

   return 0;
}



me salta "error: 'clase' no se declaró en este ámbito"


seguro que es una tonteria, gracias por adelantado!
Título: Re: no se declaro en este ambito
Publicado por: Akai en 21 Enero 2012, 20:19 PM
Necesitas pasarle el objecto a funciçon para que esta pueda operar con él.

función pasaría a ser de este modo:
Código (cpp) [Seleccionar]
int funcion(Clase clase)
Título: Re: no se declaro en este ambito
Publicado por: anamnesis_92 en 21 Enero 2012, 20:24 PM
Muchas gracias!

EI: juntando mensajes.

Cita de: Akai en 21 Enero 2012, 20:19 PM
Necesitas pasarle el objecto a funciçon para que esta pueda operar con él.

función pasaría a ser de este modo:
Código (cpp) [Seleccionar]
int funcion(Clase clase)

de todos modos, cada clase que use en una funcion la tengo que pasar como parametro?¿¿
no hay otro modo¿?
Título: Re: no se declaro en este ambito [SOLUCIONADO]
Publicado por: Littlehorse en 21 Enero 2012, 20:36 PM
Hay muchas formas de acceder a un objeto. Empieza comprendiendo lo básico respecto del pasaje de parámetros y luego iras encontrando diversas formas de acceder a un objeto.

Si no estas con ningún libro te recomiendo que tomes alguno del hilo de libros que se encuentra en las chinchetas. Muy recomendable.

Saludos!