您好,登錄后才能下訂單哦!
這篇文章將為大家詳細講解有關四種C#參數(shù)類型分別是什么,文章內容質量較高,因此小編分享給大家做個參考,希望大家閱讀完這篇文章后對相關知識有一定的了解。
C#參數(shù)類型有四種:
值類型
引用類型
輸出類型
數(shù)組型參數(shù)
C#參數(shù)類型(1):值參數(shù)
所謂值參數(shù),就是利用值向方法傳遞參數(shù)時,編譯程序給實參的值做一份拷貝,并將此拷貝傳遞給該方法,這樣做的結果就是被調用的方法不會修改實參的值,保證了實際值的安全,在調用方法時,如果形參的類型時值類型的話,必須保證實參的類型也是值類型的數(shù)據(jù).
例子:
public class MyClass { public MyClass() { // //TODO: 在此處添加構造函數(shù)邏輯 // } public void ChangeValue(string value) { value = "Value is Changed!"; } }
-------------------------------------
string value = "Value";
Response.Write(value+"
");
MyClass mc = new MyClass();
mc.ChangeValue(value);
Response.Write(value);
效果:
C#參數(shù)類型(2):引用參數(shù)
使用ref關鍵字可以使參數(shù)按照引用傳遞.在需要傳遞回調用方法時,在方法中對參數(shù)所做的任何更改都將反映在該變量中,若使用ref關鍵字,則在方法定義和調用方法時都必須顯式使用ref關鍵字.
注意ref的使用!
例子:
public class MyClass { public MyClass() { // //TODO: 在此處添加構造函數(shù)邏輯 // } public void ChangeValue(ref string value) { value = "Value is Changed!"; } }
-----------------------------
string value = "Value";
Response.Write(value+"
");
MyClass mc = new MyClass();
mc.ChangeValue(ref value);
Response.Write(value);
效果:
C#參數(shù)類型(3):輸出參數(shù)
使用out關鍵字來進行引用傳遞,這和ref關鍵字很累世,不同之處在于ref要求變量必須在傳遞之前就進行初始化,若使用out關鍵字,則方法定義和調用時都必須顯式的使用out關鍵字.
例子:
public class MyClass { public MyClass() { // //TODO: 在此處添加構造函數(shù)邏輯 // } public void ChangeValue(out string value) { value = "Value is Changed!"; } }
---------------------------------
string value ; MyClass mc = new MyClass(); mc.ChangeValue(out value); Response.Write(value);
效果:
C#參數(shù)類型(4):數(shù)組型參數(shù)
數(shù)組型參數(shù)就是聲明params關鍵字,用于指定在參數(shù)數(shù)目可變處采用參數(shù)的方法參數(shù).
在方法聲明中的params關鍵字之后不允許任何其他參數(shù),并且在方法聲明中只允許一個params關鍵字.
例子:
public class MyClass
{
public MyClass()
{
//
//TODO: 在此處添加構造函數(shù)邏輯
//
}
public void ChangeValue(params string[] value)
{
foreach (string s in value)
{
HttpContext.Current.Response.Write(s + "
");}
}
}
------------------------------------------
string value1 = "Value1"; string value2 = "Value2"; MyClass mc = new MyClass(); mc.ChangeValue(value1, value2);
效果:
另:
數(shù)組類型的參數(shù):
數(shù)組類型是引用類型的數(shù)據(jù),所以也應歸類于引用類型.
public class MyClass { public MyClass() { // //TODO: 在此處添加構造函數(shù)邏輯 // } public void ChangeValue(string[] value) { value[0] = "This is Value0,Changed!"; } }
----------------------------------------------
string[] value = { "Value1", "Value2" };
Response.Write(value[0] + "
");
MyClass mc = new MyClass();
mc.ChangeValue(value);
Response.Write(value[0] + "
");
效果:
注意:
ref和out的區(qū)別:
傳遞到ref參數(shù)的參數(shù)必須***初始化,而out的參數(shù)在傳遞之前不必初始化.
關于四種C#參數(shù)類型分別是什么就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經查實,將立刻刪除涉嫌侵權內容。