#ifndef GIA_CARICATO1
#define GIA_CARICATO1
#include <string>
#include <iostream>
const int N = 11;
typedef char data[N];
class impiegato{
protected : char* nome;
float stipendio;
data d;
public : impiegato();
impiegato(const char* NOME, const float STIPENDIO , const data & DATA);
~impiegato();
//FUNZIONI DI ACCESSO ALLE VARIABILI MEMBRO
const char* getNome()const{return this->nome;};//il nome non deve poter essere modificato
float & getStipendio(){return this->stipendio;};//lo stipendio deve essere modificato
const char* getData()const {return this->d;};//la data on deve poter essere modificata
//FUNZIONI MEMBRO PROPRIE DELLA CLASSE
float cambiaStipendio(const int numOre,const float pagaOraria);
//operatore di stampa
friend ostream & operator << (ostream & uscita,const impiegato & i);
};
#endif
//---------------------------------------------------------------------------
ostream & impiegato::operator << (ostream & uscita, const impiegato & i){
.......
}