一、ref&out
共同點:兩者都是對基本型別(int、bool、float、double···等)以及string的值進行修改。
不同點:ref是對有值引數(有初始化的引數)經行修改,out是對無值引數(沒有經行初始化的引數)修改。
二、可變引數params
static int sum(int nul,params int nums)
static void main(string args)
必須為引數最後一位
三、遞迴&丟擲異常
static void main(string args)
console.writeline(fileordircount("d:/"));
}//斐波那契額數列 遞迴演示
static long fib(long n)
//用遞迴查詢檔案數量
static long fileordircount(string path)
}catch (exception)
return count;
}
四、get&set
//兩種方式
//1 public string name
//2 private string _name ;
public string name
set
}//有兩個類person:
public class person
public class person
}
簡單說下區別吧:當例項化第乙個「person」這個類時,系統在分配記憶體空間時對name屬性直接分配記憶體,之後對name屬性的操作也是直接操作記憶體中name屬性所在的這個塊;而當例項化第二個「人」型別時,系統會先分配乙個叫name的private私有的記憶體空間(此處的name對於類的內部使用,name對於外部操作使用,要有所區分),之後的讀與寫的操作都是通過name這個public的類似於指標的東西來關聯name進行,以此達到封裝的目的,並且通過get和set關鍵字也可以控制可讀還是可寫。建議用後者
五、初始化&匿名函式
//類初始化 建構函式
class test
public test(string _name) : this()//繼承其他構造的建構函式
public string name
} class program
;//物件初始化
var man = new ;//匿名函式 適用短期使用的型別
}}
C 之可變引數,ref,out
1 可變引數 在c 4.0中增加了許多新的特性,這裡我主要說一下 可變引數陣列 int sum params int values int sum string name,params int values 注意 可變引數陣列必須是最後乙個,而且可變引數是c4.0中才有的特性。引數預設值 c 4.0...
C 學習 函式的ref out引數
函式引數預設是值傳遞的,也就是 複製乙份 通過函式的處理對數值本身並沒有影響,如果函式想對數值本身產生影響就需要使用相應的引數。ref必須先初始化,因為是引用,所以必須先 有 才能引用。使用ref如果未進行初始化,將報出如圖所示的錯誤使用了未賦值的區域性變數 age 加上ref之後傳參傳的是引用而不...
C 可變引數
include c 對於函式支援可變形參,它通過 來表示未知個數的形參,通過va 系列函式進行操作。va list是乙個巨集,由va start和va end界定。typedef char va list void va start va list ap,prev param type va arg...