原创 用JsonCpp從一個未知Json文件遍歷解析所有的結點與值

用JsonCpp從一個未知Json文件遍歷解析所有的結點與值 #include <iostream> #include"json.h" #include <string> #include <fstream> #include <

原创 肥貓學習日記-------------------C++單例模式>>懶漢模式

懶漢模式 什麼是懶漢模式 懶漢模式: 用靜態成員指針來指向單例類的唯一實例對象,只有真正調用獲取實例對象的靜態接口時,實例對象才被創建。 優點:什麼時用什麼時候創建,節約內存。 缺點:在第一調用訪問獲取實例對象的靜態接口才真正創建

原创 肥貓學習日記------------------Linux下的簡單UDP協議建立

UDP協議的建立 相比於TCP協議而言,UDP編程模型相對簡單。 服務端: 1、創建套接字 (socket) 2、設置地址 3、綁定(bind) 4、接收請求(recvfrom) 5、響應請求(sendto) 6、關閉套接字(cl

原创 肥貓學習日記------------------Linux下簡單TCP協議建立

如何使用socket套接字建立一個TCP協議 服務端 1、創建套接字 2、準備地址 3、綁定(bind函數) 4、監聽(listen函數) 5、等待連接(accept函數) 6、接收請求(read/

原创 肥貓學習日記---------------------Linux下C++使用類模板創建鏈表棧

#include <iostream> using namespace std; template <typename T> class Node { public: Node(T data):data(data) {

原创 肥貓學習日記-----------------TCP協議與UDP協議的區別

TCP和UDP的區別 TCP:傳輸控制協議,面向連接的服務(打電話),安全、可靠(三次握手、響應 + 重傳、四次揮手)速度較慢,一般應用在對安全性,完整性有嚴格要求的場景:如FTP協議 UDP:用戶數據報文協議,面向無連接的服

原创 肥貓學習日記---------------------Linux下C++的類模板以及使用類模板創建順序棧

類模板 類模板的定義 //創建模板的方法 template <typename M,typename R,typename A,typename O> class Test//類名 { public: //類型參數

原创 肥貓學習日記--------------------------C++中的單例模式>>餓漢模式

餓漢模式 什麼是餓漢模式 餓漢模式: 將單例類的唯一實例對象定義爲成員變量,當程序開始運行,實例對象就已經創建完成。 優點:加載進行時靜態創建單例對象,線程安全。 缺點:無論使用與否,總要創建,浪費內存 #include <ios

原创 肥貓學習日記--------------OSI參考模型與TCP協議模型的對應關係

OSI參考模型 從底層到上層分別是 物理層 -> 數據鏈流層 ->網絡層 ->傳輸層 ->會話層 ->表示層 ->應用層 共七層 TCP協議模型 數據層 ->網絡層 ->傳輸層 ->應用層 共四層 對應關係 OSI的 物理層 和

原创 肥貓學習日記------二叉樹(數組)

樹 樹:元素之間存儲一對多關係的數據結構,常用語表現族譜關係、組織關係等,也可以藉助特殊的樹型結構實現查找、排序的算法,一般使用倒懸樹的方式表示 相關術語 根結點:樹的最上層元素,有且只能有一個 子結點:該結點對應的下一層元素 父

原创 肥貓學習筆記--C語言數據結構與算法(二)----隊列

C語言數據結構與算法(二) 什麼是隊列 隊列是一種特殊的線性表,特殊之處在於它只允許在表的前端(front)進行刪除操作,而在表的後端(rear)進行插入操作,和棧一樣,隊列是一種操作受限制的線性表。進行插入操作的端稱爲隊尾,進行

原创 肥貓學習日記-------------實現Linux ls -l命令

Linux終端中ls -l是用來查看當前文件夾下所有文件的屬性 下面爲通過main函數的參數實現ls-l命令 #include <stdio.h> #include <string.h> #include <unistd.h> #

原创 肥貓學習日記------關於鏈表的擴展(一)

環形鏈表與Y型鏈表 環型鏈表 之前我們建立的鏈表都是線性的,一條路走到黑的那種。但是,不排除有時候創建或使用別人的代碼時會有環形鏈表的存在。一旦存在環型鏈表,那麼我們對鏈表的各個操作就有可能會出現死循環的情況。 檢查是否有環型鏈表

原创 肥貓學習日記---數據結構與算法(三)-----鏈表

什麼是鏈表 由一系列結點(鏈表中每一個元素稱爲結點)組成的一個有方向的數據結構體叫鏈表。其邏輯順序由指針鏈接次序實現的 順序鏈表 就我個人認爲,順序鏈表就是單項鍊表,即每個節點只有一個指針指向下一個節點。 順序鏈表的創建 要想創建

原创 肥貓學習日記---------------Linux下實現rm命令

linux在終端運行rm filename時代表着刪除文件或文件夾,標準庫函數中rmdir僅僅能夠刪除空文件夾,因此我們要想刪除包含文件的文件夾的話,要進入文件夾,刪除所有文件後退至上一層再刪除空文件夾,若是文件夾裏包含文件夾則重