【发布时间】:2019-01-31 04:41:44
【问题描述】:
我正在为我的数据结构类开发一个 c++ 项目,使用嵌套链表。
我应该编写一个程序,从文件中读取学生姓名,并从中创建一个链接列表。链表中的每个条目都应包含学生的姓名、指向下一个学生的指针以及指向该学生的成绩链表的指针。该程序允许教师为每个学生输入成绩。
就目前而言,我担心找到正确的入门方法。
本书提供了一个图表,展示了数据结构的示例:diagram
struct Grade{
float score;
};
struct GradeNode{
Grade grade_ptr; //points to Grade above
GradeNode *next_gnode; //points to next Grade NODE
};
struct StudentNode {
string name; //holds Student name
GradeNode *grades; //points to linked list of grades for this student
StudentNode *next_snode; //points to next student
};
StudentNode* head = nullptr; //head of student linked list (set to nullptr)
我相信我的布局是有道理的,但是当我运行下面的代码时:
void appendNode(string n){
StudentNode *node; //new node
node = new StudentNode;
node->name = n;
node->next_snode = nullptr;
//i just want to print out this node to see if value is initialized correctly
cout<<node->name<<endl; //this student's name prints out
};
它返回一个错误提示“链接器命令失败”。我觉得我初始化节点错误但不知道如何修复它。
如果有人有关于如何找到解决方案的提示,或使用链表完成此任务的不同方法,我将不胜感激。
【问题讨论】:
-
如果有人能告诉我如何从 mac 照片库上传照片,我会上传图表以更清晰! :)
-
所有代码是在一个文件中还是在多个文件中?
-
请将整个错误文本添加到您的问题中。在我看来,您需要告诉链接器包含 C++ 标准库。在这方面,这似乎是编译您的程序的一个问题,因此您提供的几乎所有背景阅读都无关紧要。程序中的那个或另一个符号被引用但不可用。 @Yang 可能是在正确的轨道上。
-
尝试将图像拖放到问题框中。
-
为了将来的参考,即使错误消息在不熟悉的人看来可能是一堆废话,但如果您学会阅读和解释它们,您的生活将会变得无比轻松。
标签: c++ struct linked-list