[問題] 新手問題 練習解構函數

看板C_Sharp作者 (福音)時間15年前 (2009/05/07 01:26), 編輯推噓2(206)
留言8則, 3人參與, 最新討論串1/1
就是在練習書上解構函數 書上的程式範例是如下: class A { ~A() { Console.WriteLine("Run Destructor...."); } } class MainProg { static void Main(string[] args) { Console.WriteLine("Program Begin."); A Obj = new A(); Console.WriteLine("Exit Program."); } } } 書上說會出現 Program Begin. Exit Program. Run Destructor... 三行 但是實際操作上卻只出現 Program Begin Exit Program 兩行 不知道是哪裡出了問題@@? 所以上來請教大家 先謝謝了 Ps.我最後有加一行Console.ReadLine(); 來讓程式停住好觀看結果 不知道是否有影響 但是如果不加的話程式每次執行完畢就直接關掉視窗根本沒辦法看@@ -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 122.118.15.31 ※ 編輯: sakuraeva 來自: 122.118.15.31 (05/07 01:27)

05/07 07:25, , 1F
你readline是加在main嗎~是的話當然是這樣結果
05/07 07:25, 1F

05/07 07:26, , 2F
因為你obj是到main的 } 那邊才解構 你在之前停下來當然看
05/07 07:26, 2F

05/07 07:27, , 3F
不到 obj的生命週期是到main的 } 為止
05/07 07:27, 3F

05/07 21:02, , 4F
樓上 我懂了 謝謝你的說明@@!
05/07 21:02, 4F

05/07 21:03, , 5F
有沒有不用加ReadLine但是可以讓程式視窗停住的方法呢@@
05/07 21:03, 5F

05/07 21:03, , 6F
不然都沒辦法看到結束的結果 謝謝
05/07 21:03, 6F

05/08 00:47, , 7F
兩個方法 一 你在readline前強制dispose那個物件
05/08 00:47, 7F

05/08 00:48, , 8F
二從windows-開始-執行-cmd 執行你的程式 這樣執行完視窗還在
05/08 00:48, 8F
文章代碼(AID): #1A0SWsjw (C_Sharp)