Stratos: Punto de Encuentro de Desarrolladores

¡Bienvenido a Stratos!

Acceder

Foros





Problema c++

Iniciado por Crois, 01 de Enero de 1970, 01:00:00 AM

« anterior - próximo »

Crois

                                Estoy intentando aprender C++ pero no consigo encontrar el error en este código.
Por favor ayudadme.
____________________________________________

#include
//Este ejemplo pretende calcular datos fisicos estableciendo
//sus propiedades
void main()
{
   FisicaN fisic;
   fisic.SetPos(10);
   fisic.SetTime(5);
   cout<
   
}

class FisicaN
{
public:
   int Pos,Vel,Acel,Time;

   FisicaN(){Pos=Vel=Acel=Time=0;}
   
   void FisicaN::SetVel(int Velocidad){Vel=Velocidad;}
   void FisicaN::SetPos(int Posicion){Pos=Posicion;}
   void FisicaN::SetTime(int Velocidad){Time=Tiempo;}
   void FisicaN::SetAcel(int Aceleracion){Acel=Aceleracion;}

   int GetVel()
   {
      return Pos/Time;
   }

}                                

Crois

                                Si os habeis fijado en el cout << es un error al copiar el código...
Los errores estan relacionados con la clase.
                               

samsaga2

                                Aqui tienes el programa arreglado:
#include <iostream>



class FisicaN

{

public:

 int Pos, Vel, Acel, Time;



 FisicaN ()

 {

   Pos = Vel = Acel = Time = 0;

 }



 void FisicaN::SetVel (int Velocidad)

 {

   Vel = Velocidad;

 }

 void FisicaN::SetPos (int Posicion)

 {

   Pos = Posicion;

 }

 void FisicaN::SetTime (int Tiempo)

 {

   Time = Tiempo;

 }

 void FisicaN::SetAcel (int Aceleracion)

 {

   Acel = Aceleracion;

 }



 int GetVel ()

 {

   return Pos / Time;

 }



};



//Este ejemplo pretende calcular datos fisicos estableciendo

//sus propiedades

int

main ()

{

 FisicaN fisic;

 fisic.SetPos (10);

 fisic.SetTime (5);

}

                               

Crois

                                Gracias                                

MFlores

                                A ver, varias cosillas:

El include es:
 #include

supongo que este es un problema del copia que dices en tu post.

La definición de la clase debes poner antes del main() sino, te da un error de undeclared identified, es lógico pues al usar la instrucción:
FisicaN fisic;
aún no sabe que carajo es FisicaN

Te falta un ; después del } de cerrar la clase.


Esta línea...
void FisicaN::SetTime(int Velocidad){Time=Tiempo;}
...te da error, puesto que lo que quieres decir es:
void FisicaN::SetTime(int Tiempo){Time=Tiempo;}

Por último, uno de los atractivos de la clase, es no mostrar a las funciones que la usen (main en tu caso) los miembros que no son necesarios para evitar errores, así pues, ponlos en una sección private o protected.  Esto último no da error si no lo haces, pero si no lo haces, para qué quieres una clase :sonriendo:

Un saludo,
MFlores.

                               

HgH

                                ¿Cual es el error que estas buscando?
¿error de compilación?
¿error en el resultado?
                               
gH _ TLOTB
..................
"No queremos estar obligados, por nada ni nadie, a pensar sólo en lo que es más comercial. Siempre seremos, antes que nada, programadores"

- Equipo de Zigurat -

Crois

                                Error de compilacion,pero ya esta solucionado.

Gracias por vuestro tiempo.
                               






Stratos es un servicio gratuito, cuyos costes se cubren en parte con la publicidad.
Por favor, desactiva el bloqueador de anuncios en esta web para ayudar a que siga adelante.
Muchísimas gracias.