不忘本 explicit和implicit修飾符

2021-09-06 03:52:34 字數 1832 閱讀 7018

返回目錄

部分內容來自msdn

implicit關鍵字用於宣告隱式的使用者定義型別轉換運算子。如果轉換過程可以確保不會造成資料丟失,則可使用該關鍵字在使用者定義型別和其他型別之間進行隱式轉換。

1

class

digit23

67public

double

val;89

1011

1213

//user-defined conversion from digit to double

1415

public

static

implicit

operator

double

(digit d)

1617

2223

//user-defined conversion from double to digit

2425

public

static

implicit

operator digit(double

d)26

273233}

3435

class

program

3637

dig2 =

", num, dig2.val);

5455

console.readline();

5657}58

59 }

explicit關鍵字用於宣告必須使用強制轉換來呼叫的使用者定義的型別轉換運算子

1

//cs_keyword_explicit_temp.cs

2using

system;

3class

celsius49

public

static

explicit

operator

fahrenheit(celsius c)

1013

public

float

degrees

1416}17

private

float

degrees;18}

1920

class

fahrenheit

2126

public

static

explicit

operator

celsius(fahrenheit f)

2730

public

float

degrees

3133}34

private

float

degrees;35}

3637

class

mainclass

38 fahrenheit

", f.degrees);

43 celsius c =(celsius)f;

44 console.write("

= celsius

", c.degrees);

45 fahrenheit f2 =(fahrenheit)c;

46 console.writeline("

= fahrenheit

", f2.degrees);47}

48 }

返回目錄

不忘本 介面

返回目錄 介面無疑是物件導向的程式設計中最重要的概念之一,它體現一種抽象,一種規範 即它只規定了具體的操作,而不對操作進行實現,它的實現由繼承它的類去完成 它是一種規範,即,它要求實現它的類要對它的成員完全實現才行.看一段 1 2 3 攻擊的通用介面45 6 7public inte ce iatt...

不忘本心,做自己

最近和女朋友爭執了乙個問題。女朋友剛換了一家新公司,作為乙個 老 人,在發現新公司的流程上有一些問題。然後就匯報給主管,主管就說這個事不做,被懟回去了。她就不爽了,因為主管不聽,就按照主管說的去做了,然後說再也不提意見了。我說 你改提,照樣提的啊,對的事情就應該去做。然後就吵了起來。當然,自認為對的...

不忘本 委託與事件

返回目錄 是這樣定義委託的 委託是一種定義方法簽名的型別。當例項化委託時,您可以將其實例與任何具有相容簽名的方法相關聯。您可以通過委託例項呼叫方法。下面這個委託及事件主要完成顯示按鈕名稱和值的功能 1 2 3 自定義委託45 6 7class selfdelegate89 4849 5051 在fo...