C++:誰動了我的指標——透過重載 new/delete 偵測懸空指標
譯者序: 本文介紹一種在偵錯階段尋找懸空指標的方法——重載 new 與 delete 運算子。此法以偵錯期記憶體洩漏為代價,絕不可用於正式釋出產品。VC 偵錯環
C/C++ 深度探討:void 與 void 指標
許多初學者對 void 與 void* 理解不透徹,導致使用錯誤。本文深入解析 void 的語義、用法規則與常見誤區。 void 的含義 void 字面意為「
C++ 語言風格流變史:從 C with Classes 到現代 C++
程式碼也有風格。C 語言早期就有 K&R 與 ANSI 風格之分,而 C++ 的風格演變更為複雜多變,初學者常誤以為不同風格的 C++ 代碼是不同語言。本文沿用
C++ 資料結構學習:二叉樹總結與 N 皇后問題
關於樹的討論到此告一段落。雖然 B+ 樹、B- 樹、勝者樹等進階主題尚未涉及,但前文已涵蓋樹的兩大核心用途:資料儲存與邏輯判定。若繼續深入,勢必牽涉搜尋、排序等
深入解析 C++/CLI 中的介面與泛型
介面 有時候我們需要讓不相關的類別共享一組公用成員,以實現相同的行為。最基本的方法是透過公共基底類別,但這受限於單一繼承,且各類別可能已有自己的基底類別。C+
使用 C++ 控制 DVD/CD 光碟機開關
在 Windows 檔案總管中,我們可以在 DVD/CD 光碟機圖示上按右鍵選擇「彈出」來打開光碟機托盤,但選單中卻沒有「關閉」指令來關閉光碟機。本文將示範如何
C++ 邏輯流程控制:用虛擬協程簡化異步編程
痛點:執行流 vs 邏輯流分離 同步代碼中執行流即邏輯流;異步/事件驅動模型下,必須手動拆解為狀態機,導致代碼碎片化、難維護。 解決方案:虛擬流程(協程雛形)
C/C++ 動態鏈接庫(DLL)創建與調用全攻略:隱式 vs 顯式
創建 DLL 兩種方式 方式一:__declspec(dllexport/import) + 頭文件 // DllDemo.h #ifdef DLLDEMO
C++ 多語言支持實戰:動態加載資源 DLL 實現運行時切換
核心架構 主程序內嵌英文資源(兜底) 每種語言一個資源 DLL,僅包含字符串表 字符串統一 ID,不同 DLL 對應不同翻譯 運行時動態加載對應 DLL,UI
為 STL 容器編寫自定義內存分配器:基於 SGI STL 二級分配器改造
設計目標 實現符合 STL Allocator 概念的 MyAlloc<T> 基於 SGI STL 二級分配器:自由鏈表 + 內存池 支持 map
C++ 數據結構應用:棧實現中綴表達式求值(轉後綴法)
整體流程 輸入中綴表達式(以 = 結尾) 轉換為後綴表達式(逆波蘭表示法) 掃描後綴表達式,用棧計算結果 表達式節點設計 template class
C++ Builder 入門問答:Set 類模板與 Timer 組件詳解
Set 類模板 Set 是類模板而非具體類,用於實現集合抽象數據類型。 聲明語法 typedef Set SetName; ElementType:元素