函數的形參前能夠帶三種修飾符,分別的out、ref、param。數組
out:讓函數能夠輸出「多個值」,並非真正的輸出多個值。函數
ref:至關於引用傳遞,在函數內部賦值會影響變量的值。3d
params:可變參數,當不知道數組的個數時能夠方便的使用。blog
1、out變量
代碼解析:引用
1.使用格式,定義時:out 類型 形參數名。使用時:out 實參名。方法
定義out參數變量時,能夠不爲變量賦值,由於賦值也是無用的,必須在方法內從新賦值。im
2.能夠看到,調用函數後,count的值變成了3。d3
3.C#7.0對out參數作了改進,目前尚未研究。db
2、ref
1.使用格式,定義時:ref 類型 形參名。調用時:reg 實參名。
能夠看到,使用ref的變量在使用前是必須賦值的,由於函數內部能夠不對其作操做。
2.由結果可知,count的值被賦值爲10086了。對普通的參數,形參值的改變是不會影響實參值的。
3、params
1.使用格式,定義:params 類型的數組形式(如:int[]) 形參名,必須是在全部形參的結尾定義。
2.調用時,能夠不爲params傳遞參數,此時,形參將是一個長度爲0的數組,而不是NULL。
3.能夠看到,對params可變參數的賦值形式,
a.能夠不傳遞參數。
b.能夠使用單個的參數拼湊成數組。
c.直接傳遞數組。
4.對可變參數的操做和對數組的操做一致,只是須要對其進行判斷是否傳遞了參數。
5.params可變參數也是須要傳遞賦了值的變量。
4、補充
上述的三種方式都是爲了函數返回多個參數值,若是對應的參數有關聯性,
能夠把它們封裝成一個類,這樣也能達到返回多個值的效果。