C#值類型數據直接在他自身分配到的內存中存儲數據,而C#引用類型只是包含指向存儲數據位置的指針。
基礎數據類型(string類型除外):包括整型、浮點型、十進制型、布爾型。
整型包括:sbyte、byte、char、short、ushort、int、uint、long、ulong 這九種類型;
浮點型就包括 float 和 double 兩種類型;十進制型就decimal ;布爾型就是 bool 型了。
結構類型:就是 struct 型。
枚舉類型:就是 enum 型。
引用類型有五種:class、interface、delegate、object、string
引用類型作為參數時:
1、在修改變量本身時,結果類似於值傳遞,即不會改變傳遞前的變量的值
2、在修改變量的屬性或字段時,才是引用傳遞,會影響到傳遞前的變量的值
3、參數使用了ref後,才是真正的引用傳遞,不管修改變量本身還是修改變量的屬性或字段,都會影響到傳遞前的變量的值
值傳遞:傳的是對象的值拷貝。(即函數內參數對象是調用時傳遞的對象的棧中對象的拷貝。)
引用傳遞:傳的是棧中對象的地址。(即函數內參數對象與調用時傳遞的對象完全是同一棧中對象。)