討論串[問題] return的區域變數scope?
共 5 篇文章
首頁
上一頁
1
下一頁
尾頁

推噓3(3推 0噓 0→)留言3則,0人參與, 最新作者NCRCD (光和影的謎題)時間20年前 (2005/09/14 01:27), 編輯資訊
0
0
0
內容預覽:
呃, 我不瞭解前面所說的不同是?. 在第二行結束他們兩個都是參考指向同一個物件. --. 我自己寫了個簡易程式:. class Test{. static void Main(string[] args){. string a,b="abc";. a=b;. Console.WriteLine((o
(還有337個字)

推噓1(1推 0噓 0→)留言1則,0人參與, 最新作者virdust2003 (替機殼洗個熱水澡)時間20年前 (2005/09/14 01:26), 編輯資訊
0
0
2
內容預覽:
其實有點看不太懂 你們指的複製,指的是heap 的複製還是 stack的複製. 每一次的字串指派, heap應該都不會複製,而是新建。. 就你上面那個例子(TextBox1.Text) 感覺你指的是 heap 的?. 但 s= "123"; 不就單純的配置 heap 出 123 然後將 s的valu
(還有434個字)

推噓0(0推 0噓 0→)留言0則,0人參與, 最新作者tomex (tomex_ou)時間20年前 (2005/09/13 19:45), 編輯資訊
0
0
0
內容預覽:
謝謝,stack的變數名,及heap的記憶體空間,. 雖然透過scope的操作讓ref關係消失而被回收空間. 但「GC不會回收被ref到記憶體」這原則,則可解釋原因。. TextBox1.Text = "abc";. string s = TextBox1.Text; // if不會複製,為何不同了
(還有187個字)

推噓0(0推 0噓 0→)留言0則,0人參與, 最新作者NCRCD (光和影的謎題)時間20年前 (2005/09/13 10:55), 編輯資訊
0
0
0
內容預覽:
你忽略了很基本的問題:. 1.scope和動態配置(new)的記憶體空間是不相關的. 所以new出來的東西不會因為scope而釋放, 另外覺得你對C#的GC似乎. 也不是很瞭解, C#的GC在回收時只會回收完全被沒有被參考到的物件,. 所以dt1參考的物件是不會被回收的, 我覺得你需要去看看GC的運
(還有76個字)

推噓0(0推 0噓 0→)留言0則,0人參與, 最新作者tomex (tomex_ou)時間20年前 (2005/09/13 10:00), 編輯資訊
0
0
0
內容預覽:
假如有個一函數傳回DataTable物件:. DataTable GetDataTable(). {. DataTable dt = new DataTable();. .... return dt;. }. DataTable dt1 = GetDataTable(); //這行是正常的, dt1
(還有137個字)
首頁
上一頁
1
下一頁
尾頁