C# 使用 UdpClient 實作 UDP 聊天程式(一)
UDP 通訊基礎與 UdpClient 類別 UdpClient 類別使用 UDP 協定與網路服務通訊。UDP 的優點在於簡單易用,且能同時向多個位址廣播訊息。
C# 圖片動畫顯示技巧(一):基礎架構與圖片載入
系列簡介 參考 PowerPoint 簡報動畫效果,使用 GDI+ 實作 10 種圖片動畫顯示方式。所有動畫邏輯封裝在 PictureBox 控制項上,共用基礎
C# 圖片動畫顯示技巧(五):淡出效果
ColorMatrix 實現淡出 ColorMatrix 5x5 矩陣控制 RGBA 通道縮放與平移。對角線元素 (0,0)(1,1)(2,2)(3,3) 分別
C# 圖片動畫顯示技巧(六):左右對接與左右反轉
左右對接效果 private void btnMeetMiddle_Click(object sender, EventArgs e) { int w
C# 圖片動畫顯示技巧(三):四周擴散與分塊顯示
四周擴散效果 private void btnExpand_Click(object sender, EventArgs e) { int w = M
C# 圖片動畫顯示技巧(七):上下拉伸與左右拉伸
從上向下拉伸展開 private void btnStretchTopDown_Click(object sender, EventArgs e) {
C# 圖片動畫顯示技巧(八):任意角度旋轉與橢圓裁切
任意角度旋轉:Graphics.RotateTransform private void btnRotate_Click(object sender, Eve
C# 圖片動畫顯示技巧(十):翻轉與旋轉變換
Bitmap.RotateFlip 方法完整示範 RotateFlipType 列舉定義 16 種組合:旋轉(0/90/180/270 度)+ 翻轉(X/Y/X
Effective C# 第 2 章:.NET 資源管理(上)
託管環境的核心差異 .NET 應用程式在 CLR 託管環境執行: GC 負責記憶體:無記憶體洩漏、野指標、未初始化指標問題 開發者負責非記憶體資源:檔案控制代
Effective C# 第 2 章:.NET 資源管理(下)
解構函數的效能代價 需解構的物件: GC 發現為垃圾但有解構函數 → 無法立即回收 放入解構佇列,由專用終結執行緒執行 GC 繼續清理其他垃圾 下一輪 GC
Effective C# 原則 12:優先使用欄位初始化器而非建構函式賦值
欄位初始化器語法 public class MyClass { // 宣告同時初始化 private readonly List _items
Effective C# 原則 11:優先使用 foreach 迴圈(上)
三種迴圈寫法比較 int[] foo = new int[100]; // 1. foreach(推薦) foreach (int i in foo) Con
Effective C# 原則 11:優先使用 foreach 迴圈(下)
foreach 自動處理非零起始陣列 // 建立索引 1~5 的陣列 var arr = Array.CreateInstance(typeof(int),
Effective C# 原則 10:瞭解 GetHashCode() 的缺陷(一)
GetHashCode() 唯一用途 僅用於雜湊基礎集合的鍵:Hashtable、Dictionary、HashSet。其他情況(UI 控制項、資料庫連線、檔案
Effective C# 原則 10:瞭解 GetHashCode() 的缺陷(二)
三大規則詳細解析 規則 1:相等物件必須有相同雜湊碼 實值型別預設 == 比較第一個欄位 → 滿足規則 1 若覆寫 == 不用第一欄位 → 破壞規則 1
Effective C# 原則 10:瞭解 GetHashCode() 的缺陷(完)
可變型別作雜湊鍵的災難 var c1 = new Customer(Acme Products); map.Add(c1, orders); // 稍後修改名