#include <iostream>
#include <string>
using namespace std;

struct date {
	int month, day, year;

	void print() {
		cout << month << "/" << day << "/" << year << endl;
	}
};

struct employee {
	string name;	// an example of a "member or instance variable"
	int empNum;
	double salary;
	date dateOfBirth;
	date dateOfHire;
	int supervisor;	// empNum of supervisor;
	bool isFemale;
};

void giveRaiseTo (employee& lucky) {
    lucky.salary = lucky.salary * 1.1;
}

int main () {
    // insert code here...
    date Today = {3, 3, 2011};
    Today.print();
    employee me, boss;
    me.name = "Bruce MacLennan"; // assigning to a member variable
    me.empNum = 123;
    me.salary = 100000.00;
    me.isFemale = false;
    boss.name = "Alice";
    boss.empNum = 1;
    boss.isFemale = true;
    boss.salary = 200000.00;
    me.supervisor = 1;
    me.dateOfHire.month = 10;
    me.dateOfHire.day = 1;
    me.dateOfHire.year = 2009;
    me.dateOfHire.print();
    employee newHire = {"Bob", 124, 50000.00,
    		{5, 1, 1980}, Today, 123, false};
    cout << newHire.salary << endl;
    giveRaiseTo(me);
    cout << me.salary << endl;
    return 0;
}

