我正在处理一堆带有组合的类,当我尝试实现构造函数时,我不断收到此错误(预期的标识符),这里是类标题:
#ifndef STUDENT_H_
#define STUDENT_H_
#include "University.h"
class Student {
public:
Student(); // constructor
friend ostream & operator<<(ostream &, Student &); // print the student data
friend istream & operator>>(istream &, Student &); // to read student data
private:
const int id;
string name;
int marks[5];
Date admissionDate; // Composition
University university; // Composition
};
#endif
我需要做些什么来解决这个错误?
这里是cpp,但我仍然没有实现其他io函数,因为我想先解决这个错误..
#include "Student.h"
Student::Student(){}
ostream & operator<<(ostream &, Student &){}
istream & operator>>(istream &, Student &){}
答案 0 :(得分:3)
您的构造函数应按以下方式定义
Student::Student() { /* some code */ }
答案 1 :(得分:1)
由于Student
有一个const int id
成员,你需要在构造函数中初始化它
初始化列表。 E.g:
Student::Student() : id(0)
{ }