Innholdsfortegnelse:
Definisjon - Hva betyr betinget operatør?
En betinget operatør i C #, er en operatør som tar tre operander (betingelser som skal sjekkes), verdien når betingelsen er sann og verdien når betingelsen er falsk.
En betinget operatør er representert med symbolet '?:'. Den første operanden (spesifisert før '?:') Er det evaluerende (betingede) uttrykket. Det må være slik at typen evaluert uttrykk implisitt kan konverteres til 'bool' eller som implementerer operatøren true for å unngå samlefeil. Den andre og tredje operand kontrollerer typen betinget uttrykk. Det blir oftere brukt i oppgave og ikke som et utsagn som produserer samlefeil.
Hvis returverdien til den første operanden (betinget uttrykk) er sann, blir den andre operanden evaluert. Ellers blir den tredje operanden evaluert. Derfor er resultatet av den betingede operatøren resultatet av evaluering av uttrykket som vurderes for evaluering.
For et uttrykk som er angitt som x? A: b, blir operand a evaluert hvis bare operand x (det betingede uttrykket) returnerer true. Ellers blir operand b evaluert.
Dette uttrykket er også kjent som ternary operator eller inline if (iif).
Techopedia forklarer betinget operatør
En betinget operatør er den eneste ternære operatøren (tar tre operander) i C #. Det danner seg som et alternativ til if-construct, som gir bedre konsisthet med mindre kode og bedre lesbarhet. Under kompilering oversetter C # -kompilatoren det ternære uttrykket til grenutsagn, som kan kondensere flere hvis utsagn og redusere hekkingen på kildekodenivået. Noen ganger kan koden som genereres for en ternær operatør øke ytelsen ved å ombestille noen av instruksjonene.
Egenskaper til en betinget operatør er:
- Det er høyre-assosiativt, noe som innebærer at operasjoner er gruppert fra høyre til venstre.
- Den evaluerer alltid ett av de to uttrykkene som er spesifisert etter betinget operatørsymbol. Det evaluerer aldri begge deler.
- Den første operanden må være av integrert eller pekertype.
- Den andre og tredje operander må være konvertible til hverandre og ikke gjensidig konvertible til noen annen type.
- Resultatetypen er den vanlige typen, som er en l-verdi, men bare hvis både andre og tredje operander er av samme type og begge er l-verdier.
- Bare tildelingsanrop, økning, reduksjon og nytt objektuttrykk kan brukes som uttalelse.
- Når resultatet av en evaluering av et uttrykk ved bruk av ternær operatør brukes i en metode-returerklæring, skal dens type samsvare med returtypen til den vedlagte metoden for vellykket kompilering.
- Når resultatet ikke er konstant, er typen betinget uttrykk basert på den mer vanlige en av de to typene.
