質問内容
以下のプログラムを実行した際、デストラクタが実行されません。理由が分かる方おりましたら教えていただけませんか.
ネットに載っているサンプルでもデストラクタが呼び出されませんでした。実行環境の問題なのでしょうか。
実現したいこと
・デストラクタが実行され、"End"と表示したい
発生している問題・エラーメッセージ
なし
該当のソースコード
C#
1using System; 2using System.Collections.Generic; 3using System.Linq; 4using System.Text; 5using System.Threading.Tasks; 6 7namespace Program 8{ 9 class program 10 { 11 static void Main(string[] args) 12 { 13 Sample s = new Sample(); 14 s.func(); 15 } 16 } 17 18 class Sample 19 { 20 //コンストラクタ 21 public Sample() 22 { 23 Console.WriteLine("Start"); 24 } 25 //デストラクタ 26 ~Sample() 27 { 28 Console.WriteLine("End"); 29 } 30 31 32 public void func() 33 { 34 Console.WriteLine("func"); 35 } 36 37 } 38 39}
補足情報(FW/ツールのバージョンなど)
Visual Studio2019
下記の記事に詳しく書いてあるので読んでみてください。
https://ufcpp.net/study/csharp/resource/rm_destructor/
回答2件