C 中常用的幾種預定義委託

2021-10-24 08:47:02 字數 1172 閱讀 1871

在system命名空間中,定義了一些常用的委託,如action,func,predicate,comparison,converter, eventhandler等。需要注意的是,引數帶有in的,表示逆變;引數帶有out的,表示協變。

action或action即 delegate void system.action(t1 arg1,...,tn argn)    //

func即 delegate tresule system.func(t1 arg1,...,tn argn)

predicate即 delegate bool system.predicate(t obj)

comparison即delegate int system.comparison(t arg1,t arg2)

converter即 delegate toutput system.converter(tinput  input)

eventhandler即delegate void system.eventhandler(object sender,teventargs arg)

comparison委託應用舉例: list.sort(comparisoncomparison)方法,比如

listdata=new list();

.......//初始化一些資料

data.sort(  (a,b)=> );

converter委託應用舉例: listlist.convertall(converterconverter)方法,比如

liststudents=new list();

.......//初始化一些資料

listpersons=  students.convertall(  (s)=> );    //假設student從person繼承而來

以下兩個委託是多執行緒中常用的兩個委託:

threadstart委託:

[system.runtime.interopservices.comvisible(true)]

public delegate void threadstart();

parameterizedthreadstart委託:

public delegate void parameterizedthreadstart(object obj);

CMake中常用的預定義變數

project name 通過project指定的專案名稱 project demo project source dir 工程的根目錄,上圖中的demo目錄 project binary dir 執行cmake命令的目錄,一般是在build目錄,在此目錄執行cmake cmake current ...

EventHandler,預定義的委託

eventhandler 是乙個預定義的委託 專用於表示不生成資料的事件的事件處理程式方法。如果事件生成資料,則必須提供自己的自定義事件資料型別,並且必須要麼建立乙個委託,其中第二個引數的型別為自定義型別,要麼使用泛型eventhandler of teventargs 委託類並用自定義型別替代泛型...

php中常用的預定義常量簡介

歡迎進入linux社群論壇,與200萬技術人員互動交流 進入 php中常用的預定義常量簡介 這些常量在 php 的核心中已經定義好了,可以直接使用.1 function 函式名稱 php 4.3.0 新加 自 php 5 起本常量返回該函式被定義時的名字 區分大小寫 在 php 4 中該 歡迎進入l...