Effective C# 做法 11-13

做法 11 認識 .NET 資源管理 1. 簡易圖示記憶體區塊的關聯圖 2. 記憶體排列物件的放置位址 呼叫 GC 後,記憶體位置改變了,這就是記憶體回收的概念 3. 記憶體層代 層代...

September 7, 2024 · 2 min

Effective C# 做法 07-10

做法 07 以 delegate 表示 callback 可以利用 delegate 回傳 bool 當判斷或者是回傳類別等功能降低城市耦合。 List<int> numbers = Enumerable.Range(1, 10).ToList(); var oddNumbers = numbers.Find(x => x % 2 == 1); var test = numbers.TrueForAll(x => x < 50); numbers.RemoveAll(x => x % 2 == 0); numbers.ForEach(x => Console.WriteLine(x)); public...

August 28, 2024 · 2 min

Effective C# 做法 04-06

做法 04 以內插字串取代 string.Format() 推薦這樣寫 string name = "test"; float height = 180; int age = 20; string str = $"userName: {name}, age: {age}, height: {height}"; 1. 為什麼 Math.PI 不寫 ToString 會造成 box 呢? 當需要調用 ToString() 方法時,如果我們沒有顯式調...

August 22, 2024 · 1 min

Effective C# 做法 01-03

做法 01 偏好隱含型別的區域變數 參考書籍提到的最後一段 簡單說,除非開者(包括以後的你)必須看到型別宣告才能理解程式,否則就使用 var 宣告區域變數。這...

August 17, 2024 · 2 min

C# 淺複製與深複製

前言 之前有講到 C# Value Type、Reference Type 的差異,現在來講一下淺複製(Shallow Copy)與深複製(Deep Copy)。 淺複製 將原...

June 22, 2024 · 2 min