永发信息网

C#中方法参数传递机制

答案:2  悬赏:0  手机版
解决时间 2021-05-10 06:00
  • 提问者网友:杀手的诗
  • 2021-05-09 08:48
c#中方法参数传递机制有那些,各自有什么特点及适用依据?
最佳答案
  • 五星知识达人网友:鸽屿
  • 2021-05-09 10:03

简单的说就两种传递。值传递。引用传递。


值传递就是将外面的值传入函数。在函数中修改传入的值,外部变量值不改变


如:


main()


{


int a=1;


change(a);


Console.WrintLine(a);//a依旧是1;


}


int change(int a)


{


a=6;


}




引用传递:直接将值所在的地址传过去,因此在函数中修改此值是会导致该值改变。

全部回答
  • 1楼网友:三千妖杀
  • 2021-05-09 10:12
一、參數的使用方法: 1、值參數(Value Parameter ) 格式:方法名稱(參數類型 參數名稱[,參數類型 參數名稱]) 2、引用參數(Reference Parameter ) 格式:方法名稱(ref 參數類型 參數名稱[,ref 參數類型 參數名稱]) 3、輸出參數(Out Parameter) 格式:方法名稱(out 參數類型 參數名稱[,out 參數類型 參數名稱]) 二、值參數與引用參數及輸出參數的區別: 2.1 值參數中實參的值不隨形參值變更而變更; 形參與實參值互不影響,實參傳遞給形參時,堆棧中就為其分配另外一部分空間。這樣,兩個參數變更時而互不影響。 2.2 引用參數及輸出參數中實參的值會隨形參值變更而變更 (形參:在定义函数中指定的形参,在未出现函数调用时,它们并不占内存中的存储单元.只有在发生函数调用时,函数中形参才被分配内存单元.在调用结束后,形参所占的内存单元也被释放。调用时将实参的值赋绐形参); 引用參數與輸出參數中,實參在堆棧中分配空間。當實參傳遞給形參時,會將地址傳遞給形參,即傳送的時指針,這樣形參變更時,實參也會隨著變更。 三、引用參數與輸出參數區別: 3.1 使用ref與out參數時,方法中參數及調用參數都需要加Ref或out關鍵字 3.2 使用ref參數與out參數得到的結果是一樣的,區別是:ref在調用前需給調用方法中的參數賦初值。out在調用前不需給調用方法中的參數賦初值,參數在實際方法體中初始化。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯