您好,登錄后才能下訂單哦!
小編給大家分享一下C#中方法參數怎么用,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
C#方法參數
因方法要處理更改數值,你多多少少要傳遞值給方法,并從方法獲得返回值。以下三個部分涉及到C#方法參數的三種參數。
◆輸入參數
◆引用參數
◆輸出參數
1.輸入參數
你早已在例子中見過的一個參數就是輸入參數。你用一個輸入參數通過值傳遞一個變量給一個方法——方法的變量被調用者傳遞進來的值的一個拷貝初始化。示范輸入參數的使用。
using System; public class SquareSample { public int CalcSquare(int nSideLength) { return nSideLength*nSideLength; } } class SquareApp { public static void Main() { SquareSample sq = new SquareSample(); Console.WriteLine(sq.CalcSquare(25)。ToString()); } }
輸入參數按C/C++程序員早已習慣的工作方式工作。如果你來自VB,請注意沒有能被編譯器處理的隱式ByVal或ByRef——如果沒有設定,參數總是用值傳遞。
這點似乎與我前面所陳述的有沖突:對于一些變量類型,用值傳遞實際上意味著用引用傳遞。迷惑嗎? 一點背景知識也不需要:COM中的東西就是接口,每一個類可以擁有一個或多個接口。一個接口只不過是一組函數指針,它不包含數據。
重復該數組會浪費很多內存資源;所以,僅開始地址被拷貝給方法,它作為調用者,仍然指向接口的相同指針。那就是為什么對象用值傳遞一個引用。
2.引用參數
盡管可以利用輸入參數和返回值建立很多方法,但你一想到要傳遞值并原地修改它(也就是在相同的內存位置),就沒有那么好運了。這里用引用參數就很方便。
因為你傳遞了一個變量給該方法(不僅僅是它的值),變量必須被初始化。否則,編譯器會報警。顯示如何用一個引用參數建立一個方法。
// class SquareSample using System; public class SquareSample { public void CalcSquare(ref int nOne4All) { nOne4All *= nOne4All; } } class SquareApp { public static void Main() { SquareSample sq = new SquareSample(); int nSquaredRef = 20; // 一定要初始化 sq.CalcSquare(ref nSquaredRef); Console.WriteLine(nSquaredRef.ToString()); } }
正如所看到的,所有你要做的就是給定義和調用都加上ref限定符。因為變量通過引用傳遞,你可以用它來計算出結果
并傳回該結果。但是,在現實的應用程序中,我強烈建議要用兩個變量,一個輸入參數和一個引用參數。
3.輸出參數
傳遞參數的第三種選擇就是把它設作一個輸出參數。正如該名字所暗示,一個輸出參數僅用于從方法傳遞回一個結果。它和引用參數的另一個區別在于:調用者不必先初始化變量才調用方法。
using System; public class SquareSample { public void CalcSquare(int nSideLength, out int nSquared) { nSquared = nSideLength * nSideLength; } } class SquareApp { public static void Main() { SquareSample sq = new SquareSample(); int nSquared; // 不必初始化 sq.CalcSquare(15, out nSquared); Console.WriteLine(nSquared.ToString()); } }
以上是“C#中方法參數怎么用”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。