weixin_73000861 2022-11-28 11:00 采纳率: 97.9%
浏览 4

这里的结点结构应该放在哪里?


#ifndef STUDENT_STUDENT_H
#define STUDENT_STUDENT_H
#include <iostream>
#include "Student.h"
#include "Node.h"
using namespace std;
class Grade{
public:
    int C_Lan;
    int math;
    int English;
};

struct Node{
    Student data;
    Node *next;
};

class Student{
private:
    long Student_iD;
    string StudentName;
    Grade grade;
public:
    bool addStudent(Node *&head);//包含录入,保存
    bool eraseStudent(Node *&head);
    bool modifyStudent(Node *&head);//只能改学号和名字
    bool findStudent(Node *&head);

    void display_TheBestOne();
    void display_AverageGrade();
    void display_MoreNinety();
    void display_TheSunk();
    void NewFile_Rank();

    void testDisplay(Node *&head);
};
#endif //STUDENT_STUDENT_H

这是一个Student.h文件,这里有个很奇怪的问题,我把结点的结构体定义在Student类上面,则结点用不了Student类的方法;我把结点定义在Student类下面,则直接会报错,因为传参没有Node这个类型。这种情况怎么解决?

  • 写回答

2条回答 默认 最新

  • 快乐鹦鹉 2022-11-28 11:23
    关注

    或者将结构放到类里,或者Student data改为Student *data;

    评论

报告相同问题?

问题事件

  • 创建了问题 11月28日

悬赏问题

  • ¥20 vx转账功能对方不能领取
  • ¥15 vue2+codemirror 运行后页面光标太大了
  • ¥15 pdfjs库如何在前端实现打印、旋转等功能
  • ¥15 combobox数据绑定问题
  • ¥15 maven打包时,为什么有的依赖打不进去包
  • ¥15 求复现机器学习文章一篇
  • ¥15 爬虫抓取数据|解析视频文本内容(相关搜索:自动化)
  • ¥15 combobox绑定值改变的问题
  • ¥15 from seleniumwire import webdriver 在抓取http://链接的时候会自动转https://这个怎么解决
  • ¥15 hive直连数据库模式插入mysql表数据失败(相关搜索:数据库)