C++/CLI Managed解構子

  • 7435
  • 0
  • C++
  • 2012-01-04

C++/CLI Managed解構子

在傳統C++中,解構子的寫法是"~類別名()"。而在C++/CLI中雖然也有這種寫法,但效果卻截然不同。

在C++/CLI Managed類別中,"~類別名()"其實相當於.NET程式的Dispose。在其它語言參考使用時,寫有"~類別名()"的類別,我們可以透過Dispose來釋放資源。

而要撰寫C++/CLI Managed類別的解構子,我們可以用"!類別名()"。

 

簡單的範例如下:


ref class TestObj
{
public:
	//Dispose
	~TestObj() 
	{
		//Release resource
		...
	}

	//Deconstructer
	!TestObj() 
	{
		~TestObj();
	}
};