Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Temas - progTata

#1
Hola Gente! Pues, soy nuevo en el foro y estoy haciendo una carrera de programador en la que nos enseñan C++. Tenemos que crear una clase llamada "Fecha" que tiene los valores privados dia, mes, año. hay que sobrecargar el operador "<<" para que muestres correctamente la fecha, algo asi "dd/mm/aaaa". aqui esta el codigo

//Fecha.h

class Fecha
          {     
           private:
                   int dia;
                   int mes;
                   int año;
           public:
                  Fecha();                      //Constructor por defecto
                  Fecha(int d, int m, int a);
                  void setDia(int d);
                  void setMes(int m);
                  void setAnio(int a);
                  int getDia();
                  int getMes();
                  int getAnio();
                  ostream &operator << (ostream o, Fecha f);
                  };


ahora el .cpp

// main.cpp

#include "Fecha2.h"
#include <iostream.h>
#include <stdio.h>
#include <conio.h>

ostream &operator << (ostream &o, Fecha &f)
{   int a, m, d;
    a = f.getDia();
    m = f.getMes();
    d = f.getDia();
    o << d << "." << m << "." << a;
    return o;
}
       
int main()
{Fecha fecha1;
int a, m, d, o;
cout<<"Ingresar Fecha: ";
cin>>d;
cin>>m;
cin>>a;
fecha1.setDia(d);
fecha1.setMes(m);
fecha1.setAnio(a);
cout<<"1. Mostrar mediante funcion\n";
cout<<"2. Mostrar comun\n";
cin>>o;
if( o == 1)
     {cout<<fecha1;}
if( o == 2)
     {cout<<fecha1.getDia();
      cout<<".";
      cout<<fecha1.getMes();
      cout<<".";
      cout<<fecha1.getAnio();}
getch();

}


NOTA: El "mostrar comun" lo hice para comprobar que la fecha esté guardada correctamente como metodo seguro.

Estoy usando Dev C++ 4.9.9.2 con MinGW 3.4.2

errores que me da:

3 C:\Users\*usuario*\Desktop\Programación\lab2.cpp In file included from C:\Users\*usuario*\Desktop\Programación\lab2.cpp
18 C:\Users\*usuario*\Desktop\Programación\Fecha2.h ISO C++ forbids declaration of `ostream' with no type
18 C:\Users\*usuario*\Desktop\Programación\Fecha2.h expected `;' before '&' token

Espero me puedan dar una mano, soy un tanto nuevo en esto jeje. Gracias de antemano!