22
Září

V PHP se celkem často namísto konstrukce:
if ($i % 2 == 0) {
$class = "even"
} else {
$class = "odd";
}

dá použít jednořádkové řešení za pomoci ternárního operátoru:

$class = ($i % 2)?"odd":"even";

V Delphi bohužel tento jednořádkový zápis zapsat nelze. Operátor „?“ zde prostě není. Jedno jednořádkové řešení zde ale přece jen existuje.

varClass := ifThen((cislo mod 2) = 0, 'even', 'odd');

A je to. Hotovo na jedné řádce. Funkci ifThen naleznete v unitu StrUtils pro string hodnoty a v unitu Math pro číselné hodnoty.

Jedna nevýhoda oproti PHP zde ale zůstává. Nelze použít zápis

vysledek := ifThen(delitel > 0, delenec/delitel, 0);

…a to z důvodu, že k dělení 0 stejně dojde. Prostě dojde k vyhodnocení obou předávaných zápisů, zatímco v PHP by došlo k provedení pouze druhého.


Žádné komentáře

Zanechat vzkaz

Hledáte něco?

Použijte formulář níže k prohledání stránky:

Stále jste nenašli, co jste chtěli? Zanechte komentář nebo nás kontaktuje a my už s tím něco uděláme!