Re: [問題] 回傳local變數
※ 引述《PsMonkey (痞子軍團團長)》之銘言:
: ==站內信件==
: ※ 引述《justinC (無)》之銘言:
: : int [][] tran()
: : {
: : int [][]new1=new int [colSize][rowSize];
: : for(int i=0;i<rowSize;++i)
: : for(int j=0;j<colSize;++j)
: : new1[j][i]=array[i][j];
: : return new1;
: : }
: : 我在class的method寫一個轉置矩陣
: : 最後回傳的是tran內宣告的new1二維
: : 但是在main印出new1卻有值...
: : 難道說離開function值沒有被馬上清掉?
: : 不知道java在處理local變數怎麼處理
: 抱歉,我完全看不懂你的問題
: 麻煩請修飾你的語句,使其順暢一點
: 並且讓問題描述的清楚一點
: 理論上 new1 這個變數的 scope 只有在 tran() 這個 method 當中
: 如果你在另外一個叫用 tran() 的 method 當中使用 new1
: 應該在 compile 階段就會錯誤
假設我寫的print()來印出陣列
於是print(object.tran());
這樣是可以有值得
我想問的是
new1的scope只在tran()內
當他回傳後應該會被清除阿?
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.221.120.127
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 3 之 10 篇):