Dom Razvoj Što je uvjetni operator u c? - definicija iz tehopedije

Što je uvjetni operator u c? - definicija iz tehopedije

Sadržaj:

Anonim

Definicija - Što znači uvjetni operater?

Uvjetni operator u C #, je operator koji uzima tri operanda (uvjeti koje treba provjeriti), vrijednost kada je uvjet istina i vrijednost kada je uvjet netočan.


Uvjetni operator predstavljen je simbolom '?:'. Prvi operand (naveden prije '?:') Je evaluacijski (uvjetni) izraz. Mora biti takav da se vrsta evaluiranog izraza može implicitno pretvoriti u 'bool' ili da implementira operator true kako bi se izbjegle pogreške u sastavljanju. Drugi i treći operand upravljaju vrstom uvjetnog izraza. Češće se koristi u dodjeljivanju, a ne kao izjava koja stvara pogreške u sastavljanju.


Ako je povratna vrijednost prvog operanda (uvjetni izraz) istinita, vrednuje se drugi operand. Inače, ocjenjuje se treći operand. Dakle, rezultat uvjetnog operatera rezultat je ocjene izraza koji se uzima u obzir.


Za izraz naveden kao x? A: b, operand a bit će ocijenjen ako samo operand x (uvjetni izraz) vrati true. U protivnom će se ocjenjivati ​​operand b.


Ovaj je pojam poznat i kao ternarni operator ili linijski ako (iif).

Tehopedia objašnjava uvjetni operater

Uvjetni operator jedini je ternarni operator (koji uzima tri operanda) u C #. Formira kao alternativa konstrukciji if-else, koja pruža bolju konciznost uz manje koda i bolju čitljivost. Tijekom kompilacije, C # prevoditelj prevodi ternarni izraz u izjave grana, koji mogu kondenzirati višestruke ako izjave i smanjiti gniježđenje na razini izvornog koda. Ponekad kôd generiran za ternarnog operatora može povećati performanse prepravljanjem nekih uputa.


Svojstva uvjetnog operatora su:

  • To je udruživanje udesno, što podrazumijeva da su operacije grupirane s desna na lijevo.
  • Uvijek procjenjuje jedan od dva izraza navedena nakon simbola uvjetnog operatera. Nikad ne ocjenjuje oba.
  • Prvi operand mora biti integralnog ili pokazivačkog tipa.
  • Drugi i treći operand moraju biti međusobno konvertibilni, a ne međusobno konvertirani u neku drugu vrstu.
  • Vrsta rezultata je uobičajeni tip, koji je l-vrijednost, ali samo ako su i drugi i treći operand istog tipa i oba su l-vrijednosti.
  • Samo naredba poziv, priraštaj, smanjenje i novi objektni izraz mogu se koristiti kao izraz.
  • Kada se rezultat vrednovanja izraza pomoću ternarnog operatora upotrebljava u izjavi za vraćanje metode, njegov tip bi trebao odgovarati vrsti povratka metode ograđivanja za uspješnu kompilaciju.
  • Kad rezultat nije konstantan, tip uvjetnog izraza temelji se na uobičajenom jednom od dva tipa.
Ova je definicija napisana u kontekstu C #
Što je uvjetni operator u c? - definicija iz tehopedije