C/C++ 位運算深度解析:核心操作符、交換變數、進制轉換與計數 1 的高效演算法
位運算基礎:操作符完整速查 所有資料在記憶體中皆以二進位儲存。位運算允許直接操作特定位元,適用於無符號整數型別(char、short、int、long 及其 u
C++ 堆疊(Stack)兩種實作詳解:鏈結串列 vs 動態陣列
堆疊資料結構回顧 堆疊(Stack)是限制插入/刪除僅能在表尾(Top)進行的線性表,遵循後進先出(LIFO)原則。核心操作只有 push(進堆疊)與 pop(
C/C++ 檔案操作全攻略:從 C 標準庫到 C++ 流與 WinAPI
前言 檔案 I/O 是系統程式開發的核心技能。本文系統整理四大主流檔案操作範式:ANSI C 流式/低階 I/O、C++ iostream 體系、Windows
C++ std::vector 完整指南:從基礎操作到進階應用
標準庫 vector 容器概述 std::vector 是 C++ 標準模板庫(STL)中最常用的序列容器之一。它是一個類模板,而非具體資料型別;例如 vect
DirectX 11 開發筆記:三角形繪製、頂點緩衝區、輸入佈局與圖元拓撲
DirectX 11 開發筆記:三角形繪製完整流程 延續裝置初始化,本文實作螢幕繪製彩色三角形,涵蓋頂點緩衝區建立、輸入佈局定義、頂點/像素著色器、圖元拓撲設定
C++ Primer 學習筆記:指標宣告語法、間接運算子與聲明結構
C++ Primer 學習筆記:指標宣告語法深度解析 指標是 C++ 的核心也是難點。本文整理 C++ Primer 中關於指標宣告語法、間接運算子、聲明結構四
C++ 解構函數詳解:資源清理、拷貝陷阱與三大法則
C++ 解構函數詳解:資源清理、拷貝陷阱與三大法則 解構函數在物件離開作用域時自動調用,負責「收尾工作」(釋放記憶體、關閉檔案、釋放鎖等)。本文透過 Date
C++ 頭文件與源文件關係深度解析:編譯、連結、聲明與定義
C++ 頭文件與源文件關係深度解析 從 tinyxml 編譯失敗「無法打開頭文件」切入,系統梳理 #include 機制、編譯/連結分離模型、聲明與定義規則、內
C++ this 指標深度解析:機制、返回值應用與鏈表實作
C++ this 指標深度解析 this 是非靜態成員函式的隱含參數,指向調用該函式的物件。本文解析其機制、兩大核心應用場景(鏈式調用、鏈表節點自引用)與常見誤
C++ 手刻實作 list 雙向鏈結串列
標準庫 std::list 為雙向鏈結串列,支援 O(1) 插入/刪除、雙向迭代。手刻實作有助深入理解迭代器、節點管理、拷貝語意與異常安全。 節點結構 tem
C++ 使用者自定義型別轉換:建構函式、轉換運算子與賦值運算子重載
C++ 使用者自定義型別轉換完整指南 C++ 允許類別定義與其他型別的雙向轉換,透過建構函式(單參數)、轉換運算子、賦值運算子重載三種機制。本文以「猿人 → 人
C++ 標準轉換運算子 const_cast 詳解:去除 const/volatile 資格
C++ 標準轉換運算子 const_cast 詳解 const_cast 是四大標準轉換運算子之一,專門用於移除或添加 const/volatile 資格修飾符
C++ 實現多態的另類技巧:函式指標成員替代虛函數
C++ 實現多態的另類技巧:函式指標成員替代虛函數 虛函數透過 vtable 實現動態綁定,雖強大但有微小效能開銷(間接呼叫、vptr 存取)。本文展示一種不使
標準 C++ 線程封裝:基於 Windows API 的 RAII 實現
設計目標 標準 C++98/03 無線程庫,需自行封裝 OS API。目標:Simple and easy to use,支援函數對象、RAII 管理生命週期。
C++ 實作設計模式:策略模式完整範例
C++ 實作設計模式:策略模式完整範例 參考《Head First Design Patterns》鴨子範例,使用 C++ 實作策略模式。核心思想:將變化的行為
C/C++ 記憶體管理深度指南:分配方式、常見錯誤與防禦性規則
C/C++ 記憶體管理深度指南 記憶體管理是 C/C++ 程式設計師的核心功力。本文系統整理三種分配方式、五大常見錯誤與五條防禦性規則,並深度對比指標與陣列特性