C 基礎 值型別 引用型別與ref關鍵字

2022-02-12 07:17:55 字數 920 閱讀 2906

1

inta =10

, b =20

;

2void

swap(

intx,

inty)

3

1

void

swap (

int&

x, int

&y)

2

1

class

program

2 78

static

void

main(string args)

9

14}

1

class

program

2 78

static

void

main(string args)

9

14}

1

class

testclass

2 56

class

program

7

1213

static

void

main(string args)

14

20}

上面的**,輸出的是2,因為b是引用型別,在只需修改b的成員的時候,加不加ref關鍵字都一樣。引用型別本身並不包含資料,僅僅維持了對資料的引用。

因此,使用ref引數,對值型別物件的作用顯而易見,而對於引用型別,如需修改引用型別內部的資料,則無需使用ref關鍵字;否則,當被呼叫函式內部需要更改引用本身時,比如在函式內部重新定位物件的引用,則需要使用ref關鍵字。

C 引用型別與ref

1 首先來解釋一下c 中的型別 在c 中每一種型別要麼是值型別,要麼是引用型別。所以每個物件要麼是值型別的例項,要麼是引用型別的例項。並且在c 中物件的分配模式取決於物件的實現方式,即值型別使用靜態分配,引用型別使用動態分配。即便是在進行值型別例項化的時候使用new關鍵字進行例項化也不會改變例項的分...

C 值型別與引用型別

1.主要內容 型別的基本概念 值型別深入 引用型別深入 值型別與引用型別的比較及應用 2.基本概念 c 中,變數是值還是引用僅取決於其資料型別。c 的基本資料型別都以平台無關的方式來定義,c 的預定義型別並沒有內置於語言中,而是內置於.net framework中。net使用通用型別系統 cts 定...

c 引用型別與值型別

c 的值型別包括 結構體 數值型別,bool型,使用者定義的結構體 列舉,可空型別。c 的引用型別包括 陣列,使用者定義的類 介面 委託,object,字串。在c 中函式傳值的特點 1.對於複雜的資料型別,按引用傳遞的效率更高,因為在按值傳遞時,必須複製大量的資料 2.除非特別指定,所有的引用型別都...