1. Kas ir pilnvarojums?
Pārstāvis ir atsauces tips, kas ir funkcijas rādītāja pārvaldīta versija. C# delegāti ir tips, kas saglabā atsauces kā funkcijas. Delegāti var atsaukties gan uz instancēm, gan uz statiskajām metodēm, savukārt funkciju rādītāji var atsaukties tikai uz statiskajām metodēm. Pārstāvja deklarācija atšķirībā no funkcijas ir ļoti līdzīga funkcijai, jo pārstāvim nav funkcijas pamatteksta un tam ir nepieciešams atslēgvārds Deleģēt. Deleģētajā deklarācijā ir norādīts funkcijas paraksts, kas satur parametru sarakstu un atgriešanas tipu. Kad pārstāvis ir definēts, var deklarēt pārstāvja tipa mainīgo, kuru pēc tam var inicializēt kā atsauci funkcijai ar tādu pašu parakstu kā pārstāvim, kuru pēc tam var izsaukt, izmantojot pārstāvja mainīgo. (ps: Patiesībā viņš viņam uzticēja klasi, un viņa mērķis bija nodot metodi kā parametru citām metodēm!) )
Delegāti, lai gan ir ļoti līdzīgi funkciju rādītājiem, nav rādītāji. Daudzi cilvēki ievieto . Delegāts .NET tiek saprasts kā drošs funkcijas rādītājs, kas ir tālu, un delegāta ieviešanas funkcijas rādītājs ir ļoti līdzīgs, jo tas nodrošina programmas atzvanīšanas mehānismu.
2. Četri pilnvarojuma soļi: 1. Deklarējiet pilnvarojuma veidu
2. Ir metode, kas satur izpildāmo kodu
3. Deleģētās instances izveide
4. Pārstāvja instances izsaukšana
3. Piemēri:
|