编译器错误 C2065:identifire 未声明

问题描述 投票:0回答:1

这是班级学生: #pragma一次

#include "ClsCourse.h"
#include "ClsTeacher.h"
#include <vector>  
using namespace std;
class ClsStudent : public ClsPerson {
private:
    double _GPA;
    vector< ClsTeacher> _teachers;
    vector<ClsCourse> _Courses;

在(第 10 行)编译器告诉我“ClsTeacher”未声明 identifire 。但这是一堂课,所以我不知道错误在哪里,你能帮助我吗!

这是 ClsCourse.h:

#pragma once
#include"ClsShareData.h"
#include<string>
#include<iostream>
#include<vector>


class ClsCourse : public ClsShareData
{
private:

    double _Hour;
    vector <int> _StudentsIDs;

public:

    void SetStudentsIDs(int IDs[5]);
    

    vector<int>  GetStudentsIDs();
    


    void SetCourseHours(double hours);
    

    double GetCourseHours() ;

};

这是 ClsTeacher.h:

#pragma once

#include"ClsPerson.h"
#include"ClsStudent.h"
#include<vector>
#include<string>

using namespace std;


class ClsTeacher : public ClsPerson
{
private:
    double _Salary;
    vector<int> _StudentsIDs;

public:

    void SetSalary(double salary);

    void SetStudentsIDs(vector<int> IDs);

    double GetSalary();

    vector<int> GetStudentsIDs();

};

这是 ClsPerson.h

#pragma once
#include"ClsShareData.h"
class ClsPerson : public ClsShareData
{
private:
    string _PhoneNUmber;
    int _Age;

public:



    void SetPhoneNumber(string phone);
    



    void SetAge(int age);
    

    int GetAge();
    
    string GetPhoneNumber ();
    


};

这是 ClsShareData.h :

#pragma once
#include<iostream>
#include<string>
using namespace std;
class ClsShareData
{
private:
    string _Name;
    string _ID;

public:
    void SetCourseName(string name);
    

    void SetCourseId(string id);
    

    string GetCoursename();
    

    string GetCourseId();
    
};

我找了很久也没解决。

c++ compiler-errors
1个回答
0
投票
您还需要包含 ClsPerson.H,因为它是您的父类

#包括

© www.soinside.com 2019 - 2024. All rights reserved.