It depends on what you do with the parameters. I mean, the next code:
generates the same executable than:Code:TheVariable := IFF (Something, TheVariable + 15, TheVariable * 2);
May be the compiler can optimize it but I doubt FPC or Delphi are so smart even with -O4. In that case C's "?:" would generate faster code.Code:Tmp1 := TheVariable + 15; Tmp2 := TheVariable * 2; TheVariable := IFF (Something, Tmp1, Tmp2);
Bookmarks