Ternární operátor (programování)Ternární operátor je operátor některých programovacích a skriptovacích jazyků, jako například C, C++, Java, PHP a dalších. Má aritu operace rovnou třem. Nejpoužívanější ternární operátor při programování je operátor pro podmíněný výraz, který se nejčastěji zapisuje pomocí znaků „?:“. Operátor pro podmíněný výrazOperátor pro podmíněný výraz se nejčastěji používá pro zkrácení zápisu vyhodnocení podmínky. „?:“Tradiční jazyková konstrukce if-else se v jazycích, které syntaxí vychází z jazyka C (například C++, C#, Vala, Objective-C, Java, JavaScript nebo ActionScript) se zapisuje následovně: if (podmínka) {
výraz1;
} else {
výraz2;
}
Pomocí operátoru pro podmíněný výraz je možné tento zápis zkrátit: podmínka ? výraz1 : výraz2;
Postup zpracování je takovýto:
Některé jazyky před zpracováním ternárního operátoru vyhodnocují oba výrazy, takže, pokud jsou tyto výrazy náročné na výpočetní čas nebo prostředky, je lepší provést samotné vyhodnocení opisně, pomocí podmíněného vykonání kódu.[1] Operátor ?: má asociativitu zprava doleva. Specifika C++V C++ vytváří l-hodnotu, pokud jsou výraz1 i výraz2 l-hodnoty. Operátor ?: v jazyce C++ nelze přetížit. Další variantyV jazyce CPL, který je předchůdcem jazyka C a kde se operátor poprvé objevil, se zapisoval jako V jazyce Perl 6 se operátor zapisuje pomocí znaků „??!!“: podmínka ?? výraz1 !! výraz2;
Elvis operátorNa tuto kapitolu je přesměrováno heslo Elvis operátor.
Jako "Elvis operátor" je označována dvou-argumentová forma operátoru Oproti ternárnímu operátoru v Elvis-operátoru není druhý operand, jen první a třetí: První dva splývají do jednoho. Související informace naleznete také v článku Kotlin (programovací jazyk)#Ukázka použití operátoru Elvis.
ReferenceV tomto článku byl použit překlad textu z článku Ternary_operation na anglické Wikipedii. Související články |