Header file for base class
Code:
#ifndef EMPLOYEE_H
#define EMPLOYEE_H
#include <string>
using namespace std;

class Employee
{
    public:
        Employee(string Name="", int ID=0, char Class=' ', float Profit=0);
        virtual ~Employee();
        int getID();
        char getClass();
        float getProfit();
        void setName(string n);
        void setID(int id);
        void setClass(char c);
        void setProfit(float s);
        virtual void display(ostream & out) const;
    protected:
        string myName;
        int myID;
        char myClass;
        float myProfit;
    private:
};
inline ostream & operator << (ostream & out, const Employee & p)
{
    p.display(out);
    return out;
}
Implementation file for base class
Code:
#include "Employee.h"
#include <string>
using namespace std;

Employee::Employee(string Name, int ID, char Class, float Profit)
    :myName(Name), myID(ID), myClass(Class), myProfit(Profit)
{
}

Employee::~Employee()
{
    //dtor
};
int Employee::getID()
{
    return myID;
};
char Employee::getClass()
{
    return myClass;
};
float Employee::getProfit()
{
    return myProfit;
};
void Employee::setName(string Name)
{
    myName=Name;
}
void Employee::setID(int ID)
{
    myID=ID;
}
void Employee::setClass(char Class)
{
    myClass=Class;
}
void Employee::setProfit(float Profit)
{
    myProfit=Profit;
}
void Employee::display(ostream & out) const
{
    out << "Name:" << myName << endl
        << "ID#" << myID <<endl
        << "Class:" << myClass << endl
        << "Profit:" << myProfit << endl;

}
Implementation file for derived class
Code:
#include "Chef.h"
#include <string>
using namespace std;

Chef::Chef(string Name, int ID, char Class, float Profit, string Expertise):Employee(Name,ID,Class,Profit),myExpertise(Expertise)
{
    //ctor
}

Chef::~Chef()
{
    //dtor
}
string Chef::getExpertise()
{
    return myExpertise;
}
void Chef::setExpertise(string Expertise)
{
    myExpertise=Expertise;
}
float Chef::Calc_Sal()
{
    float x=getProfit();
    x*=.2;
    x+=10000;
    return x;
}
void Chef::display(ostream & out) const
{
    Employee::display(out);
    out << "Salary:$" << Calc_Sal() << endl << "Expertise:" << myExpertise << endl;
}
When I try to build my code I am getting some errors related to the overloading of my '<<' operator. error: no match for 'operator<<' in 'out << "Salary:$"'|, and error: 'endl' was not declared in this scope| which i believe is related. If someone could help me out with this it would be greatly appreciated. THANK YOU!