Selles õpetuses õpime näidete abil C ++ versioonis kolmefaasilist operaatorit.
C ++ versioonis saab kolmekomponentset operaatorit (tuntud ka kui tingimusoperaatorit ) asendada, kui… teatud stsenaariumites.
Kolmepoolne operaator C ++ keeles
Kolmepoolne operaator hindab testi tingimust ja käivitab tingimuse tulemuse põhjal koodiploki.
Selle süntaks on
condition ? expression1 : expression2;
Siin condition
hinnatakse ja
- kui
condition
ontrue
, siisexpression1
hukatakse. - Ja kui
condition
onfalse
, siisexpression2
hukatakse.
Kolmekomponendiliste operaator võtab 3 operandi ( condition
, expression1
ja expression2
). Seega kolmepoolse operaatori nimi .
Näide: C ++ kolmekomponentne operaator
#include #include using namespace std; int main() ( double marks; // take input from users cout <> marks; // ternary operator checks if // marks is greater than 40 string result = (marks>= 40) ? "passed" : "failed"; cout << "You " << result << " the exam."; return 0; )
Väljund 1
Sisestage oma hinded: 80 sooritasite eksami.
Oletame, et kasutaja sisestab 80 . Siis marks>= 40
hindab seisund seisundiks true
. Seega "passed"
omistatakse tulemusele esimene avaldis .
Väljund 2
Sisestage oma hinded: 39,5.
Oletame, et kasutaja sisestab 39.5 . Siis marks>= 40
hindab seisund seisundiks false
. Seega "failed"
omistatakse tulemusele teine avaldis .
Millal kasutada kolmepoolset operaatorit?
C ++ versioonis saab kolmekordset operaatorit kasutada teatud tüüpi if… else
lausete asendamiseks .
Näiteks võime selle koodi asendada
#include using namespace std; int main() ( // Create a variable int number = -4; if (number> 0) cout << "Positive Number"; else cout << "Negative Number!"; return 0; )
koos
#include #include using namespace std; int main() ( int number = -4; string result; // Using ternary operator result = (number> 0) ? "Positive Number!" : "Negative Number!"; cout << result << endl; return 0; )
Väljund
Negatiivne arv!
Siin annavad mõlemad programmid sama väljundi. Kolmikoperaatori kasutamine muudab meie koodi loetavamaks ja puhtamaks.
Märkus. Kolmekomponentset operaatorit peaksime kasutama ainult siis, kui saadud lause on lühike.
Pesastatud kolmepoolsed operaatorid
Samuti on võimalik kasutada ühte kolmepoolset operaatorit teise kolmepoolse operaatori sees. Seda nimetatakse pesastatud kolmekordseks operaatoriks C ++ keeles.
Siin on programm pesastatud kolmekomponendilise operaatori abil, kas arv on positiivne, negatiivne või null.
#include #include using namespace std; int main() ( int number = 0; string result; // nested ternary operator to find whether // number is positive, negative, or zero result = (number == 0) ? "Zero" : ((number> 0) ? "Positive" : "Negative"); cout << "Number is " << result; return 0; )
Väljund
Arv on null
Ülaltoodud näites märkage kolmekordsete operaatorite kasutamist,
(number == 0) ? "Zero" : ((number> 0) ? "Positive" : "Negative");
Siin,
(number == 0)
on esimene testtingimus, mis kontrollib, kas number on 0 või mitte. Kui see on nii, määrab see"Zero"
tulemuseks stringi väärtuse .- Muul
(number> 0)
juhul hinnatakse teist testi tingimust, kui esimene tingimus onfalse
.
Märkus . Pesastatud kolmepoolseid operaatoreid pole soovitatav kasutada. Seda seetõttu, et see muudab meie koodi keerukamaks.