// Source: "Software Design ...", John A Robinson, Newnes, 2004, page 159. // Program to calculate average mark in a course mark database. // Along the way, derived types, inheritance and polymorphism are illustrated. #include using namespace std; #include "student.h" int main(int argc, char **argv) { software_design software_design; if (argc != 2) { cout << "Usage: average filename\n"; return(-1); } if (software_design.load_data(*(argv+1)) < 0) { cout << "Error while loading data\n"; return(-1); } software_design.work_out_marks(); cout << "Average was " << software_design.average_mark() << '\n'; return(0); }