作者brainpower (懒散的心)
看板C_Sharp
标题[问题] 请教一个out的问题
时间Sat May 16 01:07:27 2015
小弟现在在写一个递回函式
需要不断地从函式呼叫中取得内容更新後的阵列
我的code是这样写:
private void function1(.....)
{
int[] tempArray = new int[8];
.....
function2(..... , out tempArray);
.....
}
private void function2(..... , out int[] Array)
{
.....
function2(..... , out Array);
}
这样子跑的话就只有回传第一次呼叫function2的Array内容
之後递回的都没有,请问是我的写法有错还是观念有错?
out可以用在递回呼叫吗?
谢谢了
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 111.251.1.166
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/C_Sharp/M.1431709650.A.3E0.html
1F:推 YahooTaiwan: 改用 ref 05/16 01:32
2F:推 GoalBased: 你是要在f1取得还f2? 05/16 18:11
3F:→ brainpower: 在f1取得 05/17 01:27
4F:→ GoalBased: 可以你把的code写的完整点吗 05/17 01:33
5F:推 YahooTaiwan: 其实主要问题是你搞混 out 和 ref 的使用时机,所以 05/17 04:24
6F:→ YahooTaiwan: 也不需再看程式码了,改用 ref 就正确了 05/17 04:24
7F:→ YahooTaiwan: 有一堆文章在讲解两者的使用时机与差异,可以去找 05/17 04:24
8F:→ GoalBased: 问一下楼上,他的需求有需要用到ref吗 05/17 14:59
9F:推 YahooTaiwan: 若要用在递回里的话,需要 05/17 22:48
10F:→ brainpower: 我是看MSDN的内容来写...只是没有看得很懂 05/18 17:32