(编译器Microsoft Visual Studio)
头文件
Linklist.h
#pragma once /* 链表头文件 定义方法属性 */ class Linklist { private: void Initialize(); public: Linklist(); ~Linklist(); Linklist* Next(); void Add(int i); public: Linklist * next; int i; int length; };
pch.h
// 入门提示: // 1. 使用解决方案资源管理器窗口添加/管理文件 // 2. 使用团队资源管理器窗口连接到源代码管理 // 3. 使用输出窗口查看生成输出和其他消息 // 4. 使用错误列表窗口查看错误 // 5. 转到“项目”>“添加新项”以创建新的代码文件,或转到“项目”>“添加现有项”以将现有代码文件添加到项目 // 6. 将来,若要再次打开此项目,请转到“文件”>“打开”>“项目”并选择 .sln 文件 #ifndef PCH_H #define PCH_H // TODO: 添加要在此处预编译的标头 #include "Linklist.h" #include <iostream> #endif //PCH_H
链表的类
#include "pch.h" /* 链表的类文件 实现头文件中的方法 */ //初始化 void Linklist::Initialize() { i = 0; next = NULL; length = 0; return; } //初始化 Linklist::Linklist() { Initialize(); } //初始化 Linklist::~Linklist() { Initialize(); } //获取下一个类 Linklist* Linklist::Next() { return next; } //添加类 void Linklist::Add(int i) { //新建一个空间 Linklist *list = new Linklist(); //赋值 list->i = i; //设定指针 list->next = next; //重新规划指针 next = list; //长度增加 ++length; return; }
Demo01
// Demo01.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。 // #include "pch.h" using namespace std; void Nextlist(Linklist *list); int main() { //创建一个链表 Linklist list; //定义int i用于循环 int i =0; for (; i < 10; i++) { //向链表中添加数据 list.Add(i); } //获取当前链表 Linklist *_list = list.next; //遍历查找所有的值 while(_list != NULL) { printf("%d-------bbbbbbbbbbbbbbbbbbbbb\r\n", _list->i); _list = _list->next; } //Nextlist(list.next); return 0; } void Nextlist(Linklist *list) { printf("%d-------bbbbbbbbbbbbbbbbbbbbb\r\n", list->i); if (list->Next() == NULL) { return; } Nextlist(list->next); } // 运行程序: Ctrl + F5 或调试 >“开始执行(不调试)”菜单 // 调试程序: F5 或调试 >“开始调试”菜单 // 入门提示: // 1. 使用解决方案资源管理器窗口添加/管理文件 // 2. 使用团队资源管理器窗口连接到源代码管理 // 3. 使用输出窗口查看生成输出和其他消息 // 4. 使用错误列表窗口查看错误 // 5. 转到“项目”>“添加新项”以创建新的代码文件,或转到“项目”>“添加现有项”以将现有代码文件添加到项目 // 6. 将来,若要再次打开此项目,请转到“文件”>“打开”>“项目”并选择 .sln 文件
输出结果
9-------bbbbbbbbbbbbbbbbbbbbb 8-------bbbbbbbbbbbbbbbbbbbbb 7-------bbbbbbbbbbbbbbbbbbbbb 6-------bbbbbbbbbbbbbbbbbbbbb 5-------bbbbbbbbbbbbbbbbbbbbb 4-------bbbbbbbbbbbbbbbbbbbbb 3-------bbbbbbbbbbbbbbbbbbbbb 2-------bbbbbbbbbbbbbbbbbbbbb 1-------bbbbbbbbbbbbbbbbbbbbb 0-------bbbbbbbbbbbbbbbbbbbbb