原创 【設計模式】06 Decorator 裝飾模式(“單一職責”模式一)

文章目錄01 “單一職責”模式:02 Decorator 裝飾模式001 動機(Motivation)003 模式定義004 樣例05 結構(Structure)07 要點總結 01 “單一職責”模式: 在軟件組件的設計中,如果

原创 【劍指Offer】對稱的二叉樹:請實現一個函數,用來判斷一顆二叉樹是不是對稱的。注意,如果一個二叉樹同此二叉樹的鏡像是同樣的,定義其爲對稱的。

文章目錄題目描述遞歸思路與代碼非遞歸思路與代碼隊列實現非遞歸棧實現非遞歸 題目描述 請實現一個函數,用來判斷一顆二叉樹是不是對稱的。注意,如果一個二叉樹同此二叉樹的鏡像是同樣的,定義其爲對稱的。 遞歸思路與代碼 用遞歸的話咱們需要

原创 【傳輸平臺】安全相關基礎知識

文章目錄01 加密三要素02 加密分類03 加密方式的優缺點001 對稱加密002 非對稱加密003 數字證書和網銀KEY04 鑑別樣例 01 加密三要素 (1)明文,密文 (2)密鑰 (3)算法 02 加密分類 對稱加密(加密的

原创 【傳輸平臺】07 共享內存詳解及測試案例(本項目進程間的通信手段)

本項目使用共享內存來進行進程間通信。 **劃重點:**學習Linux的進程間通信(不侷限於進程間通信),我們應該站在Linux內核的角度去看待。 皮毛都不怎麼懂,我還需努力。 文章目錄01 管道/消息隊列傳遞數據與用共享內存傳遞數

原创 【項目界面】MFC框架程序總體剖析

MFC框架程序剖析 在理解MFC框架之前,首先要明白C++中的繼承、封裝、多態。 多態成立三個條件: 1 子類要繼承父類 2 子類重載父類的虛函數 3 父類指針指向子類對象 MFC框架把main函數封裝在了裏面 文章目錄MFC框

原创 【劍指Offer】二叉樹的下一個節點:給定一個二叉樹和其中的一個結點,請找出中序遍歷順序的下一個結點並且返回。注意,樹中的結點不僅包含左右子結點,同時包含指向父結點的指針。

題目描述 給定一個二叉樹和其中的一個結點,請找出中序遍歷順序的下一個結點並且返回。注意,樹中的結點不僅包含左右子結點,同時包含指向父結點的指針。 先來解釋一下這個題目,說實話我第一下沒看懂啥意思。意思就是說比如一個二叉樹的中序遍歷

原创 【練習準備】簡單結構體的編碼解碼(ASN.1-DER-TLV編碼解碼案例)

在進行簡單結構體的編碼解碼之前我們先來了解一下什麼是ASN.1?什麼是DER?什麼是TLV? 01 ASN.l抽象語法標記ASN.1 抽象語法標記(Abstract Syntax Notation One) ASN.1是一種 IS

原创 【設計模式】05 Observer/Event 觀察者模式(“組件協作”模式三)

注意:該觀察者模式與模板模式都很常用。百分之八十的面向對象的開發代碼結構都會用到觀察者模式 文章目錄01 動機(Motivation)02 模式定義03 樣例04 結構05 要點總結 01 動機(Motivation) 在軟件構

原创 【劍指Offer】正則表達式匹配(思路清晰)

題目重述: 請實現一個函數用來匹配包括’.‘和’‘的正則表達式。模式中的字符’.‘表示任意一個字符,而’'表示它前面的字符可以出現任意次(包含0次)。 在本題中,匹配是指字符串的所有字符匹配整個模式。例如,字符串"aaa"與模式"

原创 【模式設計】04 Strategy 策略模式(“組件協作”模式二)

當我們在code的過程中出現了用if/else if,除非那種絕對的比如(if man; else woman)(別較真說除了男女還有其他的),除了這種絕對的情況存在,其他情況我們都應該考慮到Strategy模式。遵循面

原创 【劍指Offer】把二叉樹打印成多行:從上到下按層打印二叉樹,同一層結點從左至右輸出。每一層輸出一行。

題目描述 從上到下按層打印二叉樹,同一層結點從左至右輸出。每一層輸出一行。 struct TreeNode { int val; struct TreeNode *left; struct TreeNode *right;

原创 【傳輸平臺】06 vs2013 .dll文件的創建和引用(動態鏈接庫)(編碼,解碼,釋放空間函數動態庫創建)

我們這個項目有用到.dll文件的創建和引用。最初我用的VS2019,發現得用軟件默認的.cpp 和.h文件,對於單.cpp/.h文件還好,但是對於多文件的話實在是不方便。(說句老實話,我搗試了好一會還是有問題,因此下載了VS201

原创 【傳輸平臺】補充07 Linux 怎麼刪除最特殊的共享內存段

(1)對於一般的共享內存段我們可以使用: ipcrm -m shimid 就可以刪除掉一般的共享內存段 (2)我們【07 共享內存詳解及測試案例】提到了鍵是0X00000000的共享內存是特殊的,是私有的,因此看如下用 ipcr

原创 【設計模式】08 Factory Method工廠方法(“ 對象創建” 模式一)

文章目錄“ 對象創建” 模式Factory Method工廠方法01 動機(Motivation)02 模式定義03 結構04 樣例05 要點總結 “ 對象創建” 模式 通過“對象創建” 模式繞開new,來避免對象創建(new)

原创 【模式設計】03 Template Mathod(“組件協作”模式一)

“組件協作“模式:現代軟件專業分工之後的第一個結果是“框架與應用程序的劃分”,“組件協作”模式通過晚期綁定,來實現框架與應用程序之間的松耦合,是二者之間協作時常用的模式。 ****注:Template Mathod 是一種非常基礎