Съдържание:
Определение - Какво означава условен оператор?
Условен оператор в C #, е оператор, който приема три операнда (условия, които трябва да бъдат проверени), стойността, когато условието е вярно, и стойността, когато условието е невярно.
Условен оператор е представен със символа "?:". Първият операнд (посочен преди '?:') Е оценяващият (условен) израз. Тя трябва да бъде такава, че видът на оценявания израз може да бъде имплицитно преобразуван в 'bool' или че реализира оператора true, за да се избегнат грешки при компилация. Вторият и третият операнди контролират типа условен израз. По-често се използва при присвояване, а не като оператор, създаващ компилационни грешки.
Ако връщащата стойност на първия операнд (условен израз) е вярна, се оценява вторият операнд. В противен случай се оценява третият операнд. Следователно, резултатът от условния оператор е резултат от оценка на израза, считан за оценка.
За израз, изразен като x? A: b, операнд a ще бъде оценен, ако само операндът x (условният израз) върне true. В противен случай операнд b ще бъде оценен.
Този термин е известен още като тройна оператор или инлайн, ако (iif).
Techopedia обяснява условен оператор
Условният оператор е единственият терминален оператор (вземащ три операнда) в C #. Оформя се като алтернатива на конструкцията if-else, която осигурява по-добра сбитост с по-малко код и по-добра четимост. По време на компилирането компилаторът C # превежда терминалния израз в отчетни клонове, които могат да кондензират множество, ако оператори и да намалят влагането на нивото на изходния код. Понякога кодът, генериран за терминален оператор, може да повиши производителността чрез пренареждане на някои от инструкциите.
Свойствата на условен оператор са:
- Това е дясно асоциативно, което означава, че операциите са групирани отдясно наляво.
- Той винаги оценява един от двата израза, посочени след символа на условния оператор. Никога не оценява и двете.
- Първият операнд трябва да бъде от интегрален или указателен тип.
- Вторият и третият операнди трябва да са конвертируеми един към друг и да не се превръщат взаимно в някакъв друг тип.
- Типът резултат е общият тип, който е l-стойност, но само ако и вторият, и третият операнди са от един и същи вид и и двете са l-стойности.
- Само извикване на присвояване, прираст, декремент и нов израз на обект могат да се използват като оператор.
- Когато резултатът от оценка на израз с терминалния оператор се използва в оператора return метод, неговият тип трябва да съответства на типа връщане на метода за затваряне за успешна компилация.
- Когато резултатът не е константа, типът условен израз се основава на по-разпространения един от двата типа.
