伊人久久中文大香线蕉综合_在线成人国产公开视频_中文字幕v亚洲日本在线_AV在线黑人无码

您現(xiàn)在所在的位置:首頁 >學(xué)習(xí)資源 > Unity游戲/VR/AR入門教材 > VR開發(fā)入門教程28:控制臺編程 C#的方法二

VR開發(fā)入門教程28:控制臺編程 C#的方法二

來源:奇酷教育 發(fā)表于:

參數(shù)參數(shù)分為兩種:形式參數(shù):在編寫方法的時候 預(yù)定義的參數(shù)實(shí)際參數(shù):在實(shí)際調(diào)用(使用)方法的時候 傳入方法的參數(shù)參數(shù)的類型:形式參

參數(shù)
參數(shù)分為兩種:
形式參數(shù):在編寫方法的時候 預(yù)定義的參數(shù)
實(shí)際參數(shù):在實(shí)際調(diào)用(使用)方法的時候 傳入方法的參數(shù)
 
參數(shù)的類型:
形式參數(shù):任意的數(shù)據(jù)類型 由方法編寫者在預(yù)定義時限定
實(shí)際參數(shù):任意的數(shù)據(jù)類型(和形式參數(shù)匹配)在方法的調(diào)用者中定義賦值
 
簡單示意:
形式參數(shù):
public static void Area(int radius){....} //int radius即為形式參數(shù)
實(shí)際參數(shù):
public static void Main (string[] args)
{
     int r = 1;
     Area(r);  // r即為實(shí)際參數(shù)
}
 
// 傳參的實(shí)質(zhì):int radius = r;
參數(shù)數(shù)組,通過關(guān)鍵字params定義參數(shù)數(shù)組。調(diào)用時可以傳入個數(shù)不同的實(shí)參,具備很好的靈活性。參數(shù)數(shù)組必須為參數(shù)列表的最后一個參數(shù),參數(shù)列表之前可以設(shè)置其他的參數(shù)。
 
示例:
//參數(shù)數(shù)組,關(guān)鍵字params
static void Add(params int[] p)
{
    for(int i=0;i
    {
         Console.WriteLine(p[i]);
    }
}
 
static void Main(string[] args)
{
   //調(diào)用使用了參數(shù)數(shù)組的方法 參數(shù)的數(shù)量是可變的
   Add();
   Add(1,3,5);
   Add(1,3,5,7);
}
值類型和引用類型
C#中的數(shù)據(jù)類型按照大的分類 分為值類型和引用類型。值類型包括基本數(shù)據(jù)類型、枚舉和結(jié)構(gòu),引用類型包括數(shù)組、類(String)、接口等。
 
區(qū)別:
值類型相當(dāng)于單獨(dú)的一個箱子 直接操作箱子內(nèi)的內(nèi)容。
引用類型相當(dāng)于管理存儲箱子的管理員。
 
從以下幾個方面來了解它們的具體區(qū)別:
1.聲明時
值類型:新產(chǎn)生一個箱子 等待存儲
引用類型:產(chǎn)生一個箱子管理員 等待一個箱子
2.被賦值
值類型:將新的內(nèi)容直接放在箱子內(nèi)
引用類型:和=右邊的管理員一起管理同一個箱子
函數(shù)參數(shù)默認(rèn)是值傳遞的,也就是“復(fù)制一份”。
Ref和out
out和ref傳遞的都是引用而不是值,out側(cè)重于輸出使用之前不需賦值而ref在使用之前需要賦值,另外這兩個關(guān)鍵字可以變相實(shí)現(xiàn)使一個方法輸出多個值。
 
1.形參和實(shí)參指向同一地址
2.始終保證形參和實(shí)參指向同一地址
 
ref和out不一樣:
ref在實(shí)參傳入時 保留其值 而out消除其值
 
方法編寫的時候的選擇:
若方法只有一個返回值 選擇使用返回值類型
例:
public static int ReturnInt()
{
  return 1;
}
 
如果返回值多于1個 選擇使用out
public static void ReturnInt(out int a,out int b)
{
//a、b賦初值
// a、b參與運(yùn)算
}
調(diào)用時: int c;int d;  ReturnInt(out c,out d);
 
如果需要直接將結(jié)果返回到某一個變量上 使用ref
public static void ChangeString(ref String s)
{
s = "000"+s;
}
調(diào)用時: String ss = "1";  ChangeString(ref ss);