Firstly, there should be no semicolons in #include directives
Code:
#include <iostream>;
#include <string>;
Secondly, i'm not sure why you've limited your 'name' to 25 characters, since a string is able to hold as many as you need. (Although perhaps you have your reasons)
Lastly, you're missing a semicolon at the end of your class declaration
Code:
class GradeBook {
public:
GradeBook(string); // constructor
void setCourseName(string);
string getCourseName();
void displayMessage();
void inputGrades();
void displayGradeReport();
int maximum(int, int, int);
private:
string courseName;
int maximumGrade;
} ;
The reason it gave you an error message about your constructor, is that you had written
Code:
#include "GradeBook.h"
on the line before your constructor's definition. The result of which, after the Preprocessor had glued your various #includes together, the compiler ended up thinking you intended your class, GradeBook (which was missing a semicolon), to be the return type of the constructor. Of course, constructors aren't allowed a return type, so the compiler threw up an error.