Czy istnieje w Delphi operator warunkowy?
Zbyt długo trzymałem ręce z dala od Delphi; Przez ostatnie kilka lat zajmowałem się Java i PHP. Teraz, kiedy wróciłem do wykonywania małego zadania Delphi, zdałem sobie sprawę, że naprawdę tęsknię za operatorem warunkowym obsługiwanym zarówno przez Java, jak i PHP.
W ilu miejscach znalazłbyś takie linie w swoich programach Delphi?
var s : string;
begin
...<here the string result is manipulated>...
if combo.Text='' then
s := 'null'
else
s := QuotedStr(combo.Text);
result := result + s;
end;
gdzie prosty
result := result + (combo.text='')?'null':quotedStr(combo.text);
wystarczy. W tym podoba mi się to, że nie tylko skraca kod, w ten sposób unikam deklarowania jakiegoś pomocnikas:string
zmienna.
Dlaczego operatorzy warunkowi nie są częścią Delphi i - czy kiedykolwiek będą wspierani? Zauważyłem, że w wersji Delphi na rok 2009 wprowadzono kilka rozszerzeń językowych, więc dlaczego nie dodać tej funkcji?