Tämä artikkeli on konekäännöksen peiliartikkeli, klikkaa tästä siirtyäksesi alkuperäiseen artikkeliin.

Näkymä: 29284|Vastaus: 1

[Lähde] Johdanto C#-delegaatteihin (delegaatti, toiminta, funktio, predikaatti)

[Kopioi linkki]
Julkaistu 9.4.2018 14.57.15 | | |

Delegaatti on luokka, joka määrittelee metodityypin niin, että se voidaan välittää argumenttina toiselle metodille. Tapahtuma on erityinen tilaus.

1. Luovutusilmoitus

(1). delegaatti

        valtuutettu

   Delegaatilla on vähintään 0 parametria ja enintään 32 parametria, eikä sillä voi olla palautusarvoa tai määrittää palautusarvotyyppiä.

   Esimerkiksi julkinen delegaatti int MethodtDelegate(int x, int y); Tarkoittaa, että on kaksi parametria, ja palauttaa älykkyystyypin.

(2). Toiminta

       Toiminto on geneerinen delegaatti ilman palautusarvoa.

Toiminto edustaa delegaattia, jolla ei ole parametreja eikä palautusarvoa

Action<int,string> tarkoittaa delegaattia, jolla on saapuva parametri int eikä merkkijonolle ole palautusarvoa

  Action<int,string,bool> tarkoittaa delegaattia, jolla on saapuvat parametrit int,string,bool ilman palautusarvoja

       Action<int,int,int,int> tarkoittaa, että sisään on välitetty 4 int-tyyppistä parametria, eikä palautusarvoa ole

Toiminnolla on vähintään 0 parametria ja enintään 16 parametria, eikä palautusarvoa ole.

Esimerkki:



(3). Func

Func on geneerinen delegaatti, jolla on palautusarvo

Func<int> tarkoittaa delegaattia ilman parametreja ja palauttaa int-arvon

Func<object,string,int> edustaa delegaattia, jonka saapuva parametri on objekti, ja merkkijono palauttaa int-arvon

Func<object,string,int> edustaa delegaattia, jonka saapuva parametri on objekti, ja merkkijono palauttaa int-arvon

Func<T1,T2,,T3,int> edustaa delegaattia, jonka saapuva parametri T1, T2, ,T3 (yleinen) palauttaa int-arvon

Funcilla on vähintään 0 parametria ja enintään 16 parametria, jotka palautetaan generic-palautusarvon mukaan. Palautusarvo täytyy olla, ei mitätön


Esimerkki:




(4) .predikaatti

predikaatti on geneerinen delegaatti, joka palauttaa bool-tyypin

predikaatti<int> edustaa delegaattia, jonka saapuva parametri int palauttaa bool-arvoa

Predikaatilla on ja vain yksi parametri, ja palautusarvo on kiinteä bool-arvoon

Esimerkki:







Edellinen:rabbitMQ Queue Queue Message Persistence [lähdekoodin kanssa]
Seuraava:Yhteenveto tiedoista ActiveMQ:sta ja RabbitMQ:sta
Julkaistu 17.12.2019 19.42.23 |
Minulla on kysymys. Kirjoitin liikaa js:ää ja totuin callback-toimintoihin.

Sitten käytettiin Funcia parametrina. Ja tämän Funcin haluan toteuttaa asynkronisesti. Jos löydät vastauksia, voit laittaa Funcin Task.Run-palveluun
Hän vaihtoi nopeasti ketjun tunnuksen.

Käytin leikkisästi Func<string, Task<string>> jotta voisin odottaa toimintoa suoraan, mutta huomasin, ettei hän oikeastaan vaihtanut thread id:tä.
Vastuuvapauslauseke:
Kaikki Code Farmer Networkin julkaisemat ohjelmistot, ohjelmamateriaalit tai artikkelit ovat tarkoitettu vain oppimis- ja tutkimustarkoituksiin; Yllä mainittua sisältöä ei saa käyttää kaupallisiin tai laittomiin tarkoituksiin, muuten käyttäjät joutuvat kantamaan kaikki seuraukset. Tämän sivuston tiedot ovat peräisin internetistä, eikä tekijänoikeuskiistat liity tähän sivustoon. Sinun tulee poistaa yllä oleva sisältö kokonaan tietokoneeltasi 24 tunnin kuluessa lataamisesta. Jos pidät ohjelmasta, tue aitoa ohjelmistoa, osta rekisteröityminen ja hanki parempia aitoja palveluita. Jos rikkomuksia ilmenee, ota meihin yhteyttä sähköpostitse.

Mail To:help@itsvse.com