i changed it to

Code:
static char *date::mnames[]= { "Jan", "Feb", "Mar", "Apr", "May", "June", "July", "Aug", "Sep", "Oct", "Nov", "Dec" };
now it gives the err

Code:
error C2720: 'date::mnames' : 'static ' storage-class specifier illegal on members
i tried removing the static keyword and it gives a linker error

Code:
1>employee.obj : error LNK2019: unresolved external symbol "public: __thiscall date::date(class date &)" (??0date@@QAE@AAV0@@Z) referenced in function "public: class date __thiscall Employee::getHireDate(void)" (?getHireDate@Employee@@QAE?AVdate@@XZ)
Employee is another class I have

employee.h
Code:
#pragma once
#include <string>
#include "date.h"

using namespace std;

class Employee
{
	private:
		int division;
		int dept;
		string name;
		const int empNo;
		date hireDate;
		date promotionDate;
		string classification;
		float salary, currentHours;
		static int size;

	public:
		//a default constructor
		Employee(void);
		//  a constructor to initialize new-ly created structs.
		//todo: date class
		Employee(int,int,string,date,date,string,float,float);
		//destructor
		~Employee(void);

		int getSize();

		int getDivision();
		int getDept();
		string getName();
		date getHireDate();
		date getPromotionDate();
		string getClassification();
		bool getExempt();
		float getSalary();
		float getCurrentHours();
		const int getEmpNo();

		void setDivision(int d);
		void setDept(int de);
		void setName(string n);
		void setHireDate(date hd);
		void setPromotionDate(date pd);
		void setClassification(string c);
		void setExempt(bool e);
		void setSalary(float s);
		void setCurrentHours(float ch);

		virtual void printEmployee();
		virtual float pay();
};
employee.cpp
Code:
#include "employee.h"
#include <iostream>

//keep track of how many employees we have
int Employee::size=0;

Employee::Employee(void): empNo(size++)
{
	currentHours=0.0;
}

Employee::Employee(int div, int dep, string n, date hire, date prom, string cls, float salry, float curHr=0):empNo(size++)
{
	division=div;
	dept=dep;
	name=n;
	hireDate=hire;
	promotionDate=prom;
	classification=cls;
	salary=salry;
	currentHours=curHr;
}


int Employee::getSize()
{
	return size;
}

int Employee::getDivision()
{
	return division;
}

int Employee::getDept()
{
	return dept;
}

string Employee::getName()
{
	return name;
}

date Employee::getHireDate()
{
	return hireDate;
}

date Employee::getPromotionDate()
{
	return promotionDate;
}

string Employee::getClassification()
{
	return classification;
}

float Employee::getSalary()
{
	return salary;
}

float Employee::getCurrentHours()
{
	return currentHours;
}

const int Employee::getEmpNo()
{
	return empNo;
}

void Employee::setDivision(int d)
{
	division=d;
}

void Employee::setDept(int de)
{
	dept=de;
}

void Employee::setName(string n)
{
	name=n;
}

void Employee::setHireDate(date hd)
{
	hireDate=hd;
}

void Employee::setPromotionDate(date pd)
{
	promotionDate=pd;
}

void Employee::setClassification(string c)
{
	classification=c;
}

void Employee::setSalary(float s)
{
	salary=s;
}

void Employee::setCurrentHours(float ch)
{
	currentHours=ch;
}


void Employee::printEmployee()
{
	cout<<"Name: " << name.c_str()
		<< " Div: " << division
		<< ""
		<< ""
		<< ""
		<< ""
		<< ""
		<< " Current hours: ";

}

float Employee::pay()
{
	//return getSalary(); geoff
	return (float) salary; //teacher
}