Denne artikkelen er en speilartikkel om maskinoversettelse, vennligst klikk her for å hoppe til originalartikkelen.

Utsikt: 2933|Svare: 0

[Kommunikasjon] .NET/C# generisk T kovariant ut og inverter i grensesnittet

[Kopier lenke]
Publisert på 03.08.2023 20:35:23 | | | |
Krav: Nylig så jeg på .NET-kildekoden og oppdaget at det finnes et ut-nøkkelord i grensesnittets generiske nøkkelord, for eksempel:offentlig grensesnitt IStringLocalizer<out T>, og så studerte han det.

Generiske typeparametere i et grensesnitt kan erklæres som kovarianter eller invertere. Kovarians gjør det mulig for grensesnittmetoder å ha en returtype som er mer avledet enn returtypen definert av den generiske typeparameteren. Inverteren gjør det mulig for grensesnittmetoden å ha en mindre grad av utledning fra argumenttypen spesifisert av den generiske parameteren. Generiske grensesnitt med kovariante eller invertergeneriske parametere kalles "varianter".

Covariance: Bruk out-nøkkelordet for å erklære den generiske typeparameteren som kovariant.
Omvendt: Bruk in-nøkkelordet for å erklære den generiske typeparameteren som inverter.

Dette skjermbildet fra VS2022 er veldig beskrivende – det illustrerer hvilke begrensninger dette har for generiske produkter, som vist nedenfor:



På kommisjonFunc<in T, ut TResult>Dette betyr at parametertypen er T og returtypen er TResult.

Referanse:
Innloggingen med hyperkoblingen er synlig.
Innloggingen med hyperkoblingen er synlig.






Foregående:En ny timer i .NET 6, PeriodicTimer, brukes
Neste:Qv2ray kobler Trojan-Go-tjenesten på Windows
Ansvarsfraskrivelse:
All programvare, programmeringsmateriell eller artikler publisert av Code Farmer Network er kun for lærings- og forskningsformål; Innholdet ovenfor skal ikke brukes til kommersielle eller ulovlige formål, ellers skal brukerne bære alle konsekvenser. Informasjonen på dette nettstedet kommer fra Internett, og opphavsrettstvister har ingenting med dette nettstedet å gjøre. Du må fullstendig slette innholdet ovenfor fra datamaskinen din innen 24 timer etter nedlasting. Hvis du liker programmet, vennligst støtt ekte programvare, kjøp registrering, og få bedre ekte tjenester. Hvis det foreligger noen krenkelse, vennligst kontakt oss på e-post.

Mail To:help@itsvse.com