Re: [問題] managed C++的問題

看板C_Sharp (C#)作者 (Harold)時間18年前 (2007/02/07 12:10), 編輯推噓1(100)
留言1則, 1人參與, 最新討論串2/2 (看更多)
在 C# 中把一個 local 變數設成 null 是沒有意義的, 所以你其實不需要這麼做, GC 會自己判斷物件還有沒有被 reference 不過如果是一個 static 變數, 把它設成 null 就可能有作用了, 那表示你以後都不會用到這個物件了所以可以 GC C++/CLI 用 nullptr, MyClass ^obj; if (obj == nullptr) ... ※ 引述《euleramon (風林火山)》之銘言: : 最近因為需用到一些C++的library,不得已用managed C++改寫程式, : 開發平台是.net2005, : 感覺跟以前C#很像,很多framework都還是可以用,但語法差很多, : 大致上程式還算好改,適應了一些像 ^, ::, %, gcnew,..等一些怪怪的語法.. : 以前C#的 keyword 像是 partial, is 等 不再適用。 : 另外感覺IDE對C#的智慧校正判斷比managed C++來得多。 : ===============以上都是廢話啦!============ : 想問一下版上高手, : 以前我在C#上如果某些reference object不再需要的話,大部分會把它們設成null, : 交給gc處理, : 但在managed C++沒有null這個keyword,而NULL是傳統C++的語法不行指定給它 : ,請問在managed C++下該怎麼將不要的reference object設定成"丟掉"交給gc處理? : 以前C#用debug模式看它的reference值沒指定的會是null,但在managed C++ : 沒指定看它是值會變成<undefined value>。 XD" : 降子我以前在C#寫的判斷 if( object == null ) 換到C++該怎麼寫?? : 雖然說我用一種比較tricky的方式改寫也行的通,但總覺得不是正常的寫法。 : (應該有人知道這方法 XD") : 麻煩幫我解答一下,感謝。 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 67.161.17.127

02/07 15:00, , 1F
這篇也是推一下
02/07 15:00, 1F
文章代碼(AID): #15oL4urj (C_Sharp)
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 2 篇):
文章代碼(AID): #15oL4urj (C_Sharp)