C 中委託例項的命名規則

2021-09-10 12:00:22 字數 971 閱讀 2969

我們知道乙個類中的屬性應該用名詞或名詞性短語,方法用動詞或動賓短語;但是委託的例項卻似乎有一些游離。因為在 .net 中委託代表的是乙個動作,既可以把它看作是名詞,也可以看作是動詞。在用法上,既可以像屬性和變數一樣被各種傳遞,也可以像乙個方法一樣被呼叫。

那麼委託例項的命名,應該遵循屬性和變數的命名,還是遵循方法的命名呢?

委託的例項可以當作屬性或者變數使用:

var action =()

=> console.

writeline

("walterlv is a 逗比"

);

委託的例項也可以當作方法使用:

var action =()

=> console.

writeline

("walterlv is a 逗比");

action()

;

於是委託的命名方式遷就名詞還是動詞呢?

在微軟的官方文件 naming guidelines 中提到了 .net 中約定的命名方式。對於委託的命名,實際上只在 names of type members 中提到了,不過提及的實際上是事件型的委託,而不是一般的委託例項。然後,微軟其他地方的官方文件中也沒有單獨提及委託的命名方式。

為了弄清楚第一方**的命名規則,我去 上找了一些使用了委託的**,然後發現,對於actionfunc系列委託的命名,有以下這些(部分名稱只保留了字尾進行合併):

使用名詞的:

使用動詞的:

使用縮略詞的:

我把縮略詞單獨拿出來,是因為縮寫了以下就看不出來這到底是縮自名詞還是縮自動詞。

基本上可以確定:

委託例項的命名是 —— 乙個表示動作的名詞

參考資料

我的部落格會首發於 而 csdn 和僅從其中摘選發布,而且一旦發布了就不再更新。

理解c 中委託

1.我們對委託做乙個總結 委託是乙個類,它定義了方法的型別,使得可以將方法當作另乙個方法的引數來進行傳遞,這種將方法動態地賦給引數的做法,可以避免在程式中大量使用if else switch 語句,同時使得程式具有更好的可擴充套件性。正確理解委託的列子 usingsystem usingsystem...

C 中委託的使用

在類中宣告乙個委託 關鍵字 delegate 類似於定義了乙個抽象函式 public delegate int add int m,int n 定義它的例項,如a public add a 在使用它的類中具體實現並進行關聯 例如add宣告及例項化是在類c中,則在使用的它的類如form1類中具體寫個方...

C 中委託與事件

c 為了型別安全,預設並不支援指標。而是採用委託的方式。委託的宣告 屬性 修飾符 delegate 返回型別 委託型別名 引數列表 其中返回型別和引數列表共同決定了委託型別能關聯的一組方法 public delegate int tdelegate int a,int b 宣告委託 在類classd...