Sto creando un semplice progetto su visual studio e ho iniziato a implementare una classe separando interfaccia e implementazione e il codice principale in tre file. Il problema è che compilando visual studio mi dice che l'oggetto cout non è stato dichiarato. Non so perchè ma penso sia legato a qualche problema col namespace. Potreste aiutarmi per favore? Posto il codice qui sotto.
Interfaccia della classe:
#pragma once
#ifndef DATA_H_INCLUDED
#define DATA_H_INCLUDED
#include <string>
class Data
{
public:
	Data(int gg, int mm, int aa);
	std::string formato_breve();
	int get_mese() { return mese; };
private:
	int giorno = 1, mese = 1, anno = 1970;
};
#endif 
Implementazione della classe:
#include "data.h"
Data::Data(int gg, int mm, int aa)
{
	if (gg >= 1 && gg <= 31)
		giorno = gg;
	if (mm >= 1 && mm <= 31)
		mese = mm;
	if (anno >= 1970)
		anno = aa;
}
std::string Data::formato_breve()
{
	return std::to_string(giorno) + "/" + std::to_string(mese) + "/" + std::to_string(anno);
}
Codice principale:
#include <iostream>
#include "stdafx.h"
#include "data.h"
using namespace std;
int main()
{
	Data d(16, 8, 2018);
	cout << "Oggi e' il: " << d.formato_breve() << endl;
	system("pause");
    return 0;
}