C++ Exercise Issue

I need some clarification in tracking down a problem I am having. Attached is a zip file that has a bulk of the files used in this assignment.

I am recieving a compiler error that I do not know where to look for the solution. The IDE shows the error: undefined reference to 'vtable for extPersonType'. I have not seen this error before, that I know of.


----------------------

/*
* File: extPersonType.cpp
* Created on January 26, 2011, 01:38 AM
*/
#include "extPersonType.h"
//#include "personType.h"
//#include "addressType.h"
#include <iostream>
using namespace std;

void extPersonType::print()const
{
cout << lastName << firstName << streetAddress << city << state << zipCode << "Birthday" << dMonth << dDay << dYear;
switch (classification)
{
case 'R':
cout << " friend ";
case 'A':
cout << " family ";
case 'B':
cout << " business ";
default:
cout << "";
}

}
void extPersonType::setExtPersonType(string last, string first, string address, string cty, string st, string zip, int mon, int day, int year, char classif)
{
lastName = last;
firstName = first;
streetAddress = address;
city = cty;
state = st;
zipCode = zip;
dMonth = mon;
dDay = day;
dYear = year;
classification = classif;

}
void extPersonType::setClassification(char classif)
{
classification = classif;
}

void extPersonType::setPhoneNumber(string phone)
{
phoneNumber = phone;
}

char extPersonType::getClassification()
{
return classification;
}

string extPersonType::getPhoneNumber()
{
return phoneNumber;
}

extPersonType::extPersonType() {
}

extPersonType::extPersonType(string last, string first, string address, string cty, string st, string zip, int mon, int day, int year, char classif) {

lastName = last;
firstName = first;
streetAddress = address;
city = cty;
state = st;
zipCode = zip;
dMonth = mon;
dDay = day;
dYear = year;
classification = classif;
}

-------------------------------------------------






/*
* File: extPersonType.h
* Created on January 26, 2011, 01:39 AM
*/
#ifndef _EXTPERSONTYPE_H
#define _EXTPERSONTYPE_H
#include "personType.h"
#include "dateType.h"
#include "addressType.h"

using namespace std;

class extPersonType: public personType, public dateType, public addressType {
public:
void print()const;
// print the extPerson Type to console
// Postcondition: personType.firstName, personType.lastName, addressType.streetAddress, .... to console
void setExtPersonType(string last, string first, string address, string cty, string st, string zip, int mon, int day, int year, char classif);
// set elements of ext person type

void setClassification(char classif);
//set the classification. A = family, R = friend, B = business
// postcondition classification

void setPhoneNumber(string phone);
//sets the phone number
//postcondition phoneNumber string

char getClassification();
//returns classification

string getPhoneNumber();
//returns classification

extPersonType();
extPersonType(string last, string first, string address, string cty, string st, string zip, int mon, int day, int year, char classif);
virtual ~extPersonType();
protected:
char classification;
string phoneNumber;

};

#endif /* _EXTPERSONTYPE_H */






Thanks,

Danni
Have you got any virtual functions? and do the virtual funtions have their function bodies defined?

Topic archived. No new replies allowed.