Seite 1 von 1

Bedingungsoperator(Java) als Macro

Verfasst: 29.12.2012 13:00
von CSHW89
Hi Leute,

habe mal wieder ein Minimacro für euch. Für alle, die den Bedingungsoperator aus Java kennen, mit Bool() geht er nun auch in PB :), allerdings mit Einschränkungen. Geht nur mit Zahlen, also nicht mit Strings, und die Werte werden alle ausgerechnet. Man sollte also keine großen Berechnungen durchführen:

Code: Alles auswählen

Macro ifo(_expr_, _first_, _second_)
  ((_first_) * Bool(_expr_) + (_second_) * (1-Bool(_expr_)))
EndMacro

a = -4
b = ifo(a<0, -a, a) / a

Debug "Signum von " + a + " = " + b
lg Kevin

Re: Bedingungsoperator(Java) als Macro

Verfasst: 29.12.2012 13:28
von STARGÅTE
Jo, an eine Funktion
Result = If(Query, True, False)
hatte ich auch schon mal gedacht.
Aber genau aus dem Grund: "die Werte werden alle ausgerechnet"
hab ich mich dann dagegen entschieden.

Trotzdem ist es eine nette Zeilenersparnis für keine "Zeitlose" abfragen.