C 中使用委託

2021-04-01 08:52:12 字數 931 閱讀 2539

c#中使用委託

在這樣一類環境中使用委託是較好的方式,如:資料提供方提供資料給另一方使用,提供方不用關心對方如何使用這些資料,而只是關心提供哪些資料。而使用方不關心提供哪些資料,只關心如何使用這些資料的情況。

使用委託的步驟:

1、宣告委託,定義引數列表

2、例項化委託,同時將乙個符合委託宣告引數的方法名稱傳遞給委託

3、呼叫委託,在資料提供方呼叫委託,並將資料按照委託宣告的方式傳遞給委託

委託類似於c++中的函式指標,好比乙個介面規範,他定義資料交換的方式,及委託方法的引數,而不是方法的名稱。委託方定義乙個委託後,然後用乙個方法將資料通過委託交給呼叫方處理。他不用理呼叫方如何處理資料,他所要關心的是提供哪些資料。

而呼叫方使用委託方提供的方法,將自己的處理方法傳遞給委託,由這個呼叫方方法來處理,委託方的資料。如下例:

using system;

using system.collections;

namespace exam

public string name }

} // 在類定義的外部宣告委託

public delegate void testdelegate(myobject me);

class myobjectlist

// 定義需要對那些資料使用委託

public void proces**yobject(testdelegate mydelegate) }

} class testclient

",me.name);

} }

class class1

l.proces**yobject(new testdelegate(testclient.printname));

console.readline();

} }

}

c 中使用委託

對於委託的定義,我的理解就是封裝一型別的方法,然後根據傳遞進的引數,由系統來進行選擇呼叫。申明 delegate void voidoperation uint x 這申明了乙個委託,與這個委託匹配的方法格式為 不返回任何結果,引數。delegate int intoperation int x,i...

form中使用委託

有關委託 private delegate void executedirective string str,int persistence 定義委託 private delegate void executedirective2 定義委託 呼叫form中的控制項方法要使用invoke來呼叫,否則出...

程序中使用委託(程序中使用程序)

delegate void setlablevisible bool bl 隱藏控制項的委託 設定進度控制項的隱藏顯示 委託 private void setvisible bool bl else this setvisible false 隱藏狀態控制項 當在程序中需要呼叫另外乙個程序的控制項的...