錯誤是在這裏:「無法分配抽象類型的對象」 錯誤
vector<Graduate *> graduates;
graduates.push_back(new AliceUniversity(identifier,id,salary,average));
祖父類:
Graduate::Graduate(char identifier,
long id,
int salary,
double average)
: _identifier(identifier),
_id(id),_salary(salary),
_average(average)
{
}
父類:
UniversityGraduate::UniversityGraduate(char identifier,
long id,
int salary,
double average)
: Graduate(identifier,id,salary,average)
{
}
實際/子類:
AliceUniversity::AliceUniversity(char identifier,
long id,
int salary,
double average)
: UniversityGraduate(identifier,id,salary,average)
{
_graduateNum++;
_sumOfGrades += average;
_avrA = getAverage();
}
我知道這是一個長鏡頭,我不能寫在這裏的整個代碼...
這不會做 - 發佈實際代碼,並在特定的地方聲明純虛函數(查找'= 0;')。 –
構造函數是完全不相關的,你應該發佈聲明 – lurscher