C中方法的參數(shù)有四種類型精_第1頁(yè)
C中方法的參數(shù)有四種類型精_第2頁(yè)
C中方法的參數(shù)有四種類型精_第3頁(yè)
C中方法的參數(shù)有四種類型精_第4頁(yè)
C中方法的參數(shù)有四種類型精_第5頁(yè)
免費(fèi)預(yù)覽已結(jié)束,剩余1頁(yè)可下載查看

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、*C#中方法的參數(shù)有四種類型1.值參數(shù)(不加任何修飾符,是默認(rèn)的類型)2.引用型參數(shù)(以ref修飾符聲明)3.輸出參數(shù)(以out修飾符聲明)4.數(shù)組型參數(shù)(以params 修飾符聲明)2.3.如果一個(gè)方法采用 ref或out參數(shù),而另一個(gè)方法不采用這兩類參數(shù),則可以進(jìn)行重載。1.值傳遞:但當(dāng)控制傳遞值類型是方法默認(rèn)的參數(shù)類型,采用的是值拷貝的方式。也就是說(shuō),如果使用的是值類型,則可以在方法中更改該值, 回調(diào)用過(guò)程時(shí),不會(huì)保留更改的值使用值類型的例子如:(下面的SwapO未能實(shí)現(xiàn)交換的功能,因?yàn)榭刂苽鬟f回調(diào)用方時(shí)不保留更改的值00using System; class Test static v

2、oid Swap(int x, int y) int temp = x;x = y;y = temp;static void Main() int i =1, j =2;Swa p(i, j);,i, j);Con sole.WriteLi ne( i = 0, j = 1/* *輸出結(jié)果為:i=1, j=2*未能實(shí)現(xiàn)Swap()計(jì)劃的功能*/2.引用傳遞(ref類型)ref關(guān)鍵字使參數(shù)按引用傳遞。其效果是,當(dāng)控制權(quán)傳遞回調(diào)用方法時(shí),在方法中對(duì)參數(shù)所做的任何更改都將反映在該變量中2.1.若要使用ref參數(shù),則方法定義和調(diào)用方法都必須顯式使用ref關(guān)鍵字。2.2.傳遞到ref參數(shù)的參數(shù)必須最先初

3、始化。這與out不同,out的參數(shù)在傳遞之前不需要顯式初始化。相關(guān)實(shí)例如下:00using System;class Teststatic void Swap(ref int x, ref int y) int temp = x;x = y;y = temp;staticint i =Swa p(refvoid Mai n()1, j = Z i, ref j);Con sole.WriteLi ne( i = 0, j = 1/*引用類型實(shí)現(xiàn)了 Swap()計(jì)劃的功能:*輸出為:* i = 2, j =1*/,i, j);3.輸出類型(out類型)out關(guān)鍵字會(huì)導(dǎo)致參數(shù)通過(guò)引用來(lái)傳遞。這與r

4、ef關(guān)鍵字類似。與ref的不同之處:3.1. ref要求變量必須在傳遞之前進(jìn)行初始化,out參數(shù)傳遞的變量不需要在傳遞之前進(jìn)行初始化3.2.盡管作為out參數(shù)傳遞的變量不需要在傳遞之前進(jìn)行初始化,但需要在調(diào)用方法初始化以便在方法返回之前賦值。示例如下:00using System;class Teststatic void Swap(out int x, out int y)/在這里進(jìn)行了 i和j的初始化x = 1;y =2;int temp = x;x = y;y = temp;static void Mai n()/此處可以不進(jìn)行i和j的初始化int i ,j ;Swa pQut i,ou

5、t j);Con sole.WriteLi ne( i = 0, j = 1/*輸出類型也實(shí)現(xiàn)了 Swap()計(jì)劃的功能:*輸出為:* i = 2, j =1*/,i, j);4. 數(shù)組型參數(shù)類型(params類型)Params關(guān)鍵字可以指定在參數(shù)數(shù)目可變處采用參數(shù)的方法參數(shù)。也就是說(shuō)。使用params可以自動(dòng)把你傳入的值按照規(guī)則轉(zhuǎn)換為一個(gè)新建的數(shù)組。4.1.在方法聲明中的params關(guān)鍵字之后不允許任何其他參數(shù),并且在方法聲明中只允許一個(gè)params關(guān)鍵字。示例如下:00using System;class Appp ublic staticfor ( int i =Con sole.WriteLi ne(listi);void Use Params (p arams object list)0; i list.Le ngth; i+)static void Main() / 一般做法是先構(gòu)造一個(gè)對(duì)象數(shù)組,然后將此數(shù)組作為方法的參數(shù) object arr = new object 3 100, a , keywords ; UseParams(arr);/ 而使用了 params 修飾方法參

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論