#ifndef DATA_H
#define DATA_H


class cData
{
private:
	int m_iDia;
	int m_iMes;
	int m_iAno;
/////////////////////
//metodos privados
	bool isAnoBissexto(int)const;
	bool isDataValida(int, int, int)const;
	int getDiasMes(int,int)const;
	int getNumDiasAno()const;
	void getDiaSemana(int i, char *d)const;

public:
	cData();
	cData(int,int,int);
	cData(const cData &);
	~cData();

	int getDia()const;
	int getMes()const;
	int getAno()const;

	void setData(int,int,int);

	cData & operator = (const cData &);
	bool operator == (const cData &);
	cData & operator ++ ();
	cData & operator -- ();

	
	void getDiaSemana(char *);
	int anosCompletos(const cData &);

	void ler(istream &);
	void escreve(ostream &);

	friend ostream & operator << (ostream &, cData &);
	friend istream & operator >> (istream &, cData &);
};
#endif