C++ 異常處理核心知識(下):標準異常與實戰案例
一、標準庫提供的異常分類 邏輯異常(繼承自 logic_error) invalid_argument:無效實參 out_of_range:實參超出預期範圍
C++ typename 關鍵字完全指南
前言 在模板編程中,typename 與 class 在聲明模板參數時可互換,但在嵌套依賴類型名前必須使用 typename 以消除歧義。本文系統講解其規則、例
C++ sizeof 運算符深度解析(一)
前言 本文基於 Windows 32 位平台、Visual Studio 2008 環境,系統梳理 sizeof 運算符的核心規則、與 strlen 的區別、結
C 語言實現集合數據結構:基於鏈表的完整庫
集合數學特性回顧 無序性:{1,3} == {3,1} 唯一性:元素不重複,{1,3,1} 非法 基本運算:并集 (∪)、交集 (∩)、差集 (−)、子集判
C++ 實現歐拉回路:從七橋問題到遞歸算法
問題起源:柯尼斯堡七橋 1736 年,歐拉將「能否一次走完七橋且不重複」抽象為圖論:頂點=陸地,邊=橋。證明:無解,因四個頂點度數均為奇數。 歐拉回路/路判定
C++ 內存洩漏定位全攻略:從 CRT 檢測到專業工具
現象與危害 內存洩漏導致程序運行時間越長佔用內存越大,最終耗盡資源崩潰。C++ 無 GC,開發者需自行保證 new/delete、malloc/free 配對。
MFC 對話框靜態文本字體顏色設置完整指南
需求場景 在 MFC 對話框中,靜態文本控件 (CStatic) 默認使用系統字體、黑色文字。若需自定義字體(如「華文彩雲」)、顏色(如洋紅),需響應 WM_C
C++ 智能指針從零手寫:引用計數、作用域、裸指針封裝
背景動機 內存洩漏多因 new 後未 delete。C++11 std::shared_ptr/unique_ptr 是標準解,但理解其內部機制有助於深度掌握。
TopCoder SRM 233 Div2 - JustifyText 文本右對齊實現
題目大意 給定字符串向量 text,將每行右對齊至最長行長度:在行首補空格。返回處理後的向量。 算法邏輯 掃描所有行,找出最大長度 maxLen。 對每行,
TopCoder SRM 144 Div1 - BinaryCode 解碼算法詳解
題目大意 給定一個二進制字符串 message,它是原始二進制串 original 經過如下變換得到: message[i] = original[i-1] +
DLL 安全卸載自身技巧:FreeLibraryAndExitThread
問題場景 DLL 內部調用 FreeLibrary(hDll) 卸載自身時,代碼所在內存頁被釋放,但指令指針 (EIP/RIP) 仍指向 FreeLibrary
C++ 指針引用:語法糖還是工程利器?
前言 在 C 語言中,若函數需要修改指針本身(而非指向的內容),只能傳遞指針的指針(T**)。C++ 引入指針引用(T*&),在語法層面極大簡化了此類場景。本文
UVA 10420 List of Conquests:字符串排序計數經典題解
題目大意 輸入 n 行記錄,每行格式:國家名 女人名字...。只關心國家名。輸出所有國家名按字典序排序,及其出現次數。 n ≤ 2000,國家名長度 < 80。
Codeforces 2B The Least Round Way:動態規劃尋找最少尾部零路徑
題目大意 給定 n × n 矩陣,從左上角 (1,1) 走到右下角 (n,n),每步只能向右或向下。路徑上所有數字相乘,求**乘積末尾 0 的個數最小值**,並