成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

四種C#參數類型簡介

開發 后端
本文介紹了C#參數類型,即值類型、引用類型、輸出類型、數組型參數。

C#參數類型有四種:

值類型

引用類型

輸出類型

數組型參數

C#參數類型(1):值參數

所謂值參數,就是利用值向方法傳遞參數時,編譯程序給實參的值做一份拷貝,并將此拷貝傳遞給該方法,這樣做的結果就是被調用的方法不會修改實參的值,保證了實際值的安全,在調用方法時,如果形參的類型時值類型的話,必須保證實參的類型也是值類型的數據.

例子:

  1. public class MyClass  
  2. {  
  3.     public MyClass()  
  4.     {  
  5.         //  
  6.         //TODO: 在此處添加構造函數邏輯  
  7.         //  
  8.     }  
  9.  
  10.  
  11.     public void ChangeValue(string value)  
  12.     {  
  13.         value = "Value is Changed!";  
  14.     }  

-------------------------------------

  1. string value = "Value";  
  2. Response.Write(value+"
    "
    );  
  3.  
  4. MyClass mc = new MyClass();  
  5. mc.ChangeValue(value);  
  6.  
  7. Response.Write(value); 

 效果:

 效果

C#參數類型(2):引用參數

使用ref關鍵字可以使參數按照引用傳遞.在需要傳遞回調用方法時,在方法中對參數所做的任何更改都將反映在該變量中,若使用ref關鍵字,則在方法定義和調用方法時都必須顯式使用ref關鍵字.

注意ref的使用!

例子:

  1. public class MyClass  
  2. {  
  3.     public MyClass()  
  4.     {  
  5.         //  
  6.         //TODO: 在此處添加構造函數邏輯  
  7.         //  
  8.     }  
  9.  
  10.  
  11.     public void ChangeValue(ref string value)  
  12.     {  
  13.         value = "Value is Changed!";  
  14.     }  

-----------------------------

  1. string value = "Value";  
  2. Response.Write(value+"
    "
    );  
  3.  
  4. MyClass mc = new MyClass();  
  5. mc.ChangeValue(ref value);  
  6.  
  7. Response.Write(value); 

效果:

效果 

C#參數類型(3):輸出參數

使用out關鍵字來進行引用傳遞,這和ref關鍵字很累世,不同之處在于ref要求變量必須在傳遞之前就進行初始化,若使用out關鍵字,則方法定義和調用時都必須顯式的使用out關鍵字.

例子:

  1. public class MyClass  
  2. {  
  3.     public MyClass()  
  4.     {  
  5.         //  
  6.         //TODO: 在此處添加構造函數邏輯  
  7.         //  
  8.     }  
  9.  
  10.  
  11.     public void ChangeValue(out string value)  
  12.     {  
  13.         value = "Value is Changed!";  
  14.     }  

---------------------------------

  1. string value ;  
  2.  
  3. MyClass mc = new MyClass();  
  4. mc.ChangeValue(out value);  
  5.  
  6. Response.Write(value); 

效果:

 效果

C#參數類型(4):數組型參數

數組型參數就是聲明params關鍵字,用于指定在參數數目可變處采用參數的方法參數.

在方法聲明中的params關鍵字之后不允許任何其他參數,并且在方法聲明中只允許一個params關鍵字.

例子:

  1. public class MyClass  
  2. {  
  3.     public MyClass()  
  4.     {  
  5.         //  
  6.         //TODO: 在此處添加構造函數邏輯  
  7.         //  
  8.     }  
  9.  
  10.  
  11.     public void ChangeValue(params string[] value)  
  12.     {  
  13.         foreach (string s in value)  
  14.         {  
  15.             HttpContext.Current.Response.Write(s + "
    "
    );  
  16.         }  
  17.     }  

------------------------------------------

  1. string value1 = "Value1";  
  2. string value2 = "Value2";  
  3.  
  4. MyClass mc = new MyClass();  
  5. mc.ChangeValue(value1, value2); 

效果:

效果  

另:

數組類型的參數:

數組類型是引用類型的數據,所以也應歸類于引用類型.

  1. public class MyClass  
  2. {  
  3.     public MyClass()  
  4.     {  
  5.         //  
  6.         //TODO: 在此處添加構造函數邏輯  
  7.         //  
  8.     }  
  9.  
  10.     public void ChangeValue(string[] value)  
  11.     {  
  12.         value[0] = "This is Value0,Changed!";  
  13.     }  

----------------------------------------------

 

  1. string[] value = { "Value1""Value2" };  
  2.  Response.Write(value[0] + "
    "
    );  
  3.  
  4.  MyClass mc = new MyClass();  
  5.  mc.ChangeValue(value);  
  6.  
  7.  Response.Write(value[0] + "
    "
    );  

效果:

效果 

注意:

ref和out的區別:

傳遞到ref參數的參數必須***初始化,而out的參數在傳遞之前不必初始化.

四種C#參數類型就總結到這里,希望對大家有用。

【編輯推薦】

  1. C#事件和委托的編譯代碼
  2. C#事件的由來
  3. 學習C#委托:將方法綁定到委托
  4. 學習C#委托:將方法作為方法的參數
  5. C# 插件構架實例詳解
責任編輯:book05 來源: cnblogs
相關推薦

2009-09-08 17:20:01

C#排序算法

2009-08-26 15:04:35

C#轉換

2021-10-24 08:37:18

網絡監控網絡架構網絡

2024-10-24 08:04:00

2009-08-05 14:09:04

C#日期轉換

2009-09-17 16:55:58

C#組件設計

2009-09-22 14:20:39

C#播放聲音

2013-05-30 10:06:05

光纖光纖跳線

2024-06-24 01:00:00

2024-05-21 14:04:16

2020-05-19 20:13:04

物聯網計算類型IOT

2022-03-25 14:47:24

Javascript數據類型開發

2021-12-01 23:05:27

物聯網計算數據

2009-08-25 17:52:01

C#可空值類型

2013-06-28 10:17:04

2022-06-27 11:09:06

邊緣計算

2009-08-27 15:00:55

C#線程控制

2024-05-29 13:18:12

線程Thread?方式

2010-04-15 10:45:57

IE9渲染引擎

2009-07-08 18:20:21

JDBC驅動
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 九九免费观看视频 | www.一级片| 干干干日日日 | 成人99| 韩国久久 | 国产精品一区视频 | 国产精品久久久久久久久 | 黄色大片在线播放 | 日韩在线视频一区二区三区 | 天天躁日日躁狠狠躁2018小说 | 免费在线观看黄色av | 日韩一区二区三区视频 | 久久久人成影片一区二区三区 | 狠狠狠色丁香婷婷综合久久五月 | 国产一级片在线观看视频 | 国产伊人精品 | 亚洲欧美一区二区三区国产精品 | 成人a在线观看 | 免费观看一区二区三区毛片 | 免费同性女女aaa免费网站 | 黄色成人在线观看 | 啪啪免费网 | 成人黄色电影在线播放 | 国产福利资源 | 人人爽人人爽 | 国产片侵犯亲女视频播放 | 精品国产一区二区在线 | 毛片网站在线观看 | 国产福利资源 | 久久久久久国产精品 | 国产高清免费 | 作爱视频免费看 | 久久久久综合 | 日本三级全黄三级a | 国产精品国产a | 国产精品一区二区三区四区 | 亚洲色综合 | 99re热精品视频国产免费 | 国产美女特级嫩嫩嫩bbb片 | 国产精品国产三级国产播12软件 | wwwxx在线观看|