1.在main()中呼叫test();
如果被呼叫者想要得到呼叫者的值,
1)傳遞引數
2)使用靜態欄位來模擬全域性變數。
如果呼叫者想要得到被呼叫者的值
1)返回值
2.out引數的使用
///
/// 判斷使用者輸入資訊的對錯,並輸出錯誤資訊
///
///
///
/// 輸出引數
///
static bool usernameandpwd(string username , string pwd , out string msg)
else if(username == "jefy")
else if (pwd == "88888888")
else
}out引數用於接收方法中運算後的結果,因此在呼叫函式中可以不用賦初始值。
如果在乙個方法中,返回多個相同型別的值的時候,可以考慮返回乙個陣列,但是,如果返回多個不同型別的值的時候,要使用out引數來實現。
3.ref引數 (特例:實現兩個數的交換)
///
/// //利用ref引數實現交換兩個數的值
///
///
///
static void exchvalue(ref int data1 ,ref int data2)
能夠將乙個變數帶入乙個方法中進行改變,改變完成後,再將改變後的值帶出方法。ref引數,在呼叫函式中定義時,必須要賦初始值。
4.param 可變引數 params修飾的形參只能用在形參列表的最後乙個,且乙個形參列表中只能出現乙個params.
params 將實參列表中跟可變引數陣列型別一致的元素都當做陣列的元素去處理。//求可變陣列長度的和
int sum = 0;
getarrsum(out sum, 1, 2, 3, 4, 5, 6, 7, 8, 9);
console.writeline(sum);
static void getarrsum(out int sum ,params int arr)
}5.方法的過載 f12轉到定義 即:源**
概念:方法的名稱相同,方法的引數不同。
引數不同:
1)引數的個數相同,則引數的型別不能相同
2)引數的型別相同,則引數的個數不能相同
且方法的過載和返回型別沒有關係。
//方法的過載
1) void m(int n1)
2) int m(double n1)
3) double m(int n1 , int n2)
4) string m(string str)
6.方法的遞迴
概念:方法自己呼叫自己
C 中const關鍵字修飾
2.const應用到函式中 3.類中定義常量 const特殊用法 4.const定義常量物件,以及常量物件的用法 const名叫常量限定符,用來限定特定變數,以通知編譯器該變數是不可修改的。習慣性的使用const,可以避免在函式中對某些不應修改的變數造成可能的改動。c 中const的主要用法大致上可...
C 靜態類靜態方法中形參前的this關鍵字用法
public static class stringextension s 為什麼這裡會有乙個this關鍵字,做什麼用?其實這就是擴充套件方法!這個擴充套件方法在靜態類中宣告,定義乙個靜態方法,其中第乙個引數定義可它的擴充套件型別。foo 方法擴充套件了string類,因為它的第乙個引數定義了str...
C C 的 inline關鍵字修飾的函式
inline 與巨集的區別 巨集是在與預編譯階段處理的,沒有型別和安全檢查 而inline是在編譯階段處理的,有型別和安全檢查。也可以說,inline是一種更安全的巨集。與static修飾函式的區別 static修飾的函式有開棧和清棧的開銷,inline沒有。缺陷inline修飾的函式在呼叫點直接將...