C# 非同步程式設計基礎(一·完):四種非同步呼叫模式完整實戰
測試用非同步元件 _del.EndInvoke(ar); } 模式 1:Begin → 執行其他工作 → End (阻塞等待完成) var demo = n
C# 與 Java 深度比較(一):.NET 平台架構與語言共性總覽
.NET 平台雙核心 CLR (Common Language Runtime):對應 Java JVM,提供記憶體管理、執行緒、安全性、例外處理、JIT 編
C# 與 Java 深度比較(二):屬性系統——語法糖與封裝強制
Java/C++ 傳統寫法 foo.setSize(foo.getSize() + 1); label.getFont().setBold(true); C#
C# 與 Java 深度比較(三):索引器與委派——語法糖與類型安全函數指標
索引器:物件即陣列 C# this[int index] 語法讓物件支援陣列存取語法,內部封裝 get/set 邏輯: stories[index];
C# 與 Java 深度比較(四):事件模型——Delegate/Event vs. 內部類/監聽器
C# 事件模型原生支援 C# 以 delegate (類型安全函數指標) + event 關鍵字 直接語言層級支援事件,類似 MS VJ#。對比: Delph
C# 實現滑鼠拖曳捲動頁面功能(一):需求分析與 WinAPI 方案選型
需求背景 列印預覽控制項 (PrintPreviewControl) 內容超出可視區域時,預設僅能透過捲軸拖曳瀏覽。使用者習慣如看圖軟體般,**直接按住滑鼠左鍵
C# 實現滑鼠拖曳捲動頁面功能(二):核心邏輯與 WinAPI 呼叫實作
狀態變數宣告 bool isDragging = false; // 是否按下滑鼠左鍵進入拖曳模式 Point dragStart; // 拖曳
C# 與松下 FPΣ PLC 通訊實戰(二):MEWTOCOL-COM 協定詳解與開發環境建置
通訊協定:MEWTOCOL-COM 基礎協定:松下專用 MEWTOCOL,PLC-PC 間採 MEWTOCOL-COM 非同步傳輸,波特率可選:300~115
C# 與松下 FPΣ PLC 通訊實戰(三):完整程式碼與 MEWTOCOL-COM 協定實作
完整 WinForms 通訊程式碼 using System; using System.Text; using System.Drawing; using S
MD5 演算法 C# 完整實作(一):演算法起源、特性與填充規則
1. 來歷 MD5 (Message-Digest Algorithm 5) 由 Ronald L. Rivest 於 1991 年設計,演進自 MD2→MD3
MD5 演算法 C# 完整實作(三):四輪壓縮轉換詳細邏輯與偽代碼
步驟 5:資料塊壓縮轉換 (64 位元組 → 16 個 32 位字) 輸入訊息經填充後,以 512 位 (64 位元組) 為一區塊處理。每區塊分 16 字 X[
MD5 演算法 C# 完整實作(四):輸出格式、標準測試向量與完整原始碼
步驟 6:輸出 128 位雜湊值 A、B、C、D 四個 32 位暫存器連續儲存,共 16 位元組。依序以十六進位輸出每個位元組 (低位在前,小端序)。 標準測
避免重複造輪子——善用標準庫(續一):C++ 面試題排序向量的 STL 最佳實踐
題目還原 對 vector 排序,Person = {int num; string name;},規則:num 升序,相同則 name 升序。無 operat
避免重複造輪子——善用標準庫(續二):C++ STL sort 與 Functor 特化實戰
面試題:對 Person 向量排序 結構: struct Person { int num; string name; }; // 無 operator 規則:
避免重複造輪子——善用標準庫(續三):C++ STL、F#、Ruby 排序寫法對比
C++0x Lambda 與 Range-based for (VS2010 CTP) // Lambda 寫法排序 sort(v.begin(), v.end
在 IronPython 中使用 C# 擴充方法(一):動機與 DLR 限制
擴充方法優勢 不修改原始類別、不建立衍生類別、不重新編譯,即可「新增」方法 本質為靜態方法,但可如實例方法般呼叫:str.Foo() 降低單一檔案程式碼量、減
在 IronPython 中使用 C# 擴充方法(二):ExtensionTypeAttribute 讓 DLR 識別擴充方法
問題:DLR 無法辨識 C# 擴充方法 C# 擴充方法本質是靜態方法,編譯器透過 this 參數語法糖讓實例呼叫。但 IronPython 執行引擎 (DLR)