在 C# 中刪除物件

Muhammad Maisam Abbas 2024年2月16日
在 C# 中刪除物件

本教程將討論在 C# 中刪除使用者定義類的物件的方法。

在 C# 中通過給它分配 null 值來刪除一個使用者定義的類物件

一個類物件是指向該類的記憶體位置的引用變數。我們可以通過為其分配 null來刪除該物件。這意味著該物件當前不包含對任何記憶體位置的引用。請參見以下示例。

using System;

namespace delete_object {
  public class Sample {
    public string value { get; set; }
  }
  class Program {
    static void Main(string[] args) {
      Sample x = new Sample();
      x.value = "Some Value";
      x = null;
      Console.WriteLine(x.value);
    }
  }
}

輸出:

Unhandled Exception: System.NullReferenceException: Object reference not set to an instance of an object.

在上面的程式碼中,我們初始化了 Sample 類的物件 x,並將值分配給了 value 屬性。然後,我們通過將 null 分配給 x 來刪除物件,並列印 x.value 屬性。它給我們一個例外,因為 x 沒有指向任何記憶體位置。

另一種有益的方法是在刪除物件之後呼叫垃圾回收器。下面的程式碼示例中說明了這種方法。

using System;

namespace delete_object {
  public class Sample {
    public string value { get; set; }
  }
  class Program {
    static void Main(string[] args) {
      Sample x = new Sample();
      x.value = "Some Value";
      x = null;
      GC.Collect();
      Console.WriteLine(x.value);
    }
  }
}

在上面的程式碼中,我們在 C# 中使用 GC.Collect() 方法null 值分配給 x 物件之後,呼叫了垃圾回收器。

Muhammad Maisam Abbas avatar Muhammad Maisam Abbas avatar

Maisam is a highly skilled and motivated Data Scientist. He has over 4 years of experience with Python programming language. He loves solving complex problems and sharing his results on the internet.

LinkedIn

相關文章 - Csharp Object