2014-02-20 108 views
-3

所以我撞到在此:什麼是在函數聲明之前有一個〜的函數?

Public Stam { 
     public Stam() {Console.WriteLine("Stam");} 

     ~Stam(){Console.WriteLine("Stam")} 
     } 

到底是什麼〜?當我打電話給Stam類時會發生什麼。

+2

終結者。而你不叫課堂。 –

+0

@ ta.speot.is當我指的是呼叫類,我的意思是指的類或初始化做點什麼 – Bodokh

+0

這是一個終結器/析構函數。如果在你的代碼中出現這種情況,你幾乎肯定會出錯。 – CodesInChaos

回答

0

在這種情況下,~ operator被用於表示類的析構函數,destructors被自動調用爲清理過程的一部分。

但是,~也可用於按位補碼操作。

0

它是這個類的析構函數。據時自動調用這個類的一個實例被刪除,你用它來刪除對象等

0

在C#中,它被稱爲Destructor,相當於C++的析構函數是IDisposableDispose()方法,往往在使用塊使用。

System.IDisposable from MSDN

你所調用析構函數是更好的被稱爲Finalizer.

相關問題