clr via c 引數和屬性

2022-06-16 16:39:15 字數 1914 閱讀 5761

1,可選引數和命名引數

private

static

void m(ref

int x)

int a=5;

//呼叫方法

m(x:ref a);

class program

,s=,dt=,guid=", x, s, dt, guid);

}static

void main(string args)

}//-----------------------------結果

x=9,s=a,dt=0001/1/1 0:00:00,guid=00000000-0000-0000-0000-000000000000

x=8,s=x,dt=0001/1/1 0:00:00,guid=00000000-0000-0000-0000-000000000000

x=5,s=a,dt=2020/1/30 9:47:08,guid=89e5fcd4-2a7f-4872-968e-756a4dfa9531

x=0,s=1,dt=0001/1/1 0:00:00,guid=00000000-0000-0000-0000-000000000000

x=3,s=2,dt=0001/1/1 0:00:00,guid=00000000-0000-0000-0000-000000000000

2,defaultparametervalueattribute 和 optionattribute----------il**讀懂,il指令大全,

3,引數傳遞方式

操作符過載的版本

public

class refusedtype

public refusedtype(string

value)

public

static

void deal(ref refusedtype r1)

public

static

void deal( refusedtype r1)

public static implicit operator refusedtype(string value)

}public

static

void callref()

4,物件和集合初始化器

employee e = new employee()

可以簡化為

employee e = new employee

list ls = new list的方式進行建立。

//並且,其支援上下文操作:

//比如

list ls = new list.foreach(x=>x.console.writeline(x));

用於初始化類實列。

當類是乙個集合類的時候,還支援類似上面的用法

匿名型別

var o1 = new ;

5,有參屬性

public

class bitarray

public

bool

this[int bitpos]//索引器

setelse}}

}public

static

void call_bitarray()

}

//結果
off----第0位

offoff

offoff

offoff

offoff

offoff

offoff

on----第13位

offoff

offoff

CLR via C 第10章 屬性

1.clr支援的屬性有兩種 無參屬性,這也是我們平常說的屬性 有參屬性,它在不同的程式語言中有不同的稱呼。例如 在c 中有參屬性被稱為索引器,而在vb中被稱為預設屬性。2.屬性不能作為out或者ref引數傳給方法,而字段可以。public class sometype set static void...

《CLR via C 》讀書筆記 09 引數

如果提取的乙個方法,目的是 傳入乙個值,然後加工計算後返回 這是乙個常見的行為 傳入的值如果是 值型別 那是建立的副本,因為所以需要返回的時候再次賦值 使用 out 修飾形參,這樣傳入的是該值的位址,避免建立副本,返回 開發中,會遇到給乙個方法傳的引數大於7個,雖然這樣寫的次數少,但我幹過 引數多,...

《CLR via C 》讀書筆記 之 引數

2013 02 27 預設情況下,clr假定所有方法引數都是傳值的。當傳遞引用型別的物件時,也預設是傳值的,只不過這個值是引用 指標 本身。clr允許以傳引用的方式傳遞引數。在c 中,用關鍵字out或ref來告訴編譯器。編譯器將傳遞引數的位址,而不是傳遞引數本身。從clr角度看,out和ref完全一...