Turinys:
Apibrėžimas - ką reiškia IS operatorius?
IS operatorius, žymimas C #, yra operatorius, naudojamas dinamiškai patikrinti, ar objektas suderinamas su nurodytu tipu.
Dirbant su atskaitos tipais, apimančiais bazinius ir išvestinius tipus, labai svarbu perduoti bazinio tipo objektą į išvestinį tipą ir tada paskambinti metodu. Jei paprastas išmetimas iš bazės į išvestinį tipą nesėkmingas, išmetama išimtis. Operatorius yra naudojamas išbandyti, ar sėkmingai atlikta operacija nesukeliant išimties. Tai efektyvus operatorius. Tai ne tik patikrina, ar saugus ir sėkmingas objekto atmetimas, bet ir atima už atliktą sėkmę atiduotų daiktų vertę. Tačiau jis dažnai naudojamas kode objekto tipui nustatyti, nereikalaujant, kad būtų atlikta operacija.
Kadangi operatorius yra visada, po perdavimo operacijos grąžina loginę reikšmę (teisingą ar klaidingą) ir niekada neleidžia išimties, todėl yra labai patikimas naudoti programinės įrangos kode. Be to, tai leidžia paprasčiau patikrinti tam tikro tipo objekto tipą, o tai sumažina kodo dydį ir kūrimo pastangas.
„Techopedia“ aiškina IS operatorius
Operatorius yra tipo bandymo operatorius, turintis du parametrus, į kuriuos įeina atskaitos tipo išraiška. Turi būti patikrintas atskaitos tipo konvertavimas ir paskirties tipas, į kurį turi būti išvedama išraiška. Operatorius yra teisingas, jei duota išraiška, vaizduojanti objektą, nėra niekinė ir išraišką pavyksta perduoti į nurodytą tipą. Priešingu atveju jis grąžinamas klaidingas.
Operatoriaus negalima perkrauti teikiant bet kokią kitą semantiką. Jis gali būti naudojamas tikrinant referencines, dėžes ir atjungiant dėžes, bet ne atliekant vartotojo apibrėžtas konversijas. Nors išraiškos tipo suderinamumas yra vertinamas vykdymo metu, kompiliatorius C # kompiliatorius sukuria įspėjimą kompiliavimo metu, kai operatorius yra tipams, kurie nesuderinami.
Pvz., Operatorius „is“ gali būti naudojamas patikrinti, ar metodui perduotas parametras yra „Studentas“ ar jo išvestinis tipas, kai „Studentas“ yra tipas, naudojamas su studentu susijusiai informacijai pateikti programoje.
Operatyvusis operatorius skiriasi nuo AS operatoriaus tuo, kad pirmasis padaro du metimus, o antrasis vengia dvigubo mesti į vieną veiksmą, taigi geresnis našumas pasiekiamas naudojant operatorių.
