(編譯器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