On Sat, 8 Jan 2000, Reinhard Foerster wrote:
On Tue, Jan 04, 2000 at 05:55:26PM +0100, Konrad Rosenbaum wrote:
[cut]
Wird es nicht geben. Du musst beide explizit evaluieren, da laut C-Standard bei || und && nur ausgewertet wird, soweit es nötig ist.
Kannst du mal ein Beispiel bringen, wo das bei "g++ und Klassen" anders sein soll, also sozusagen || von rechts her ausgewertet wird. Ich kann mir sowas nicht vorstellen.
das Proggy ist im Attachment. Der Output war bei mir: not This compiler does shorten logical expressions. ^^^^ man beachte das "not" am Anfang. Ab Compiler-Flag -O3 sieht es uebrigens so aus: This compiler does not shorten logical expressions. und selbst -O6 kuerzt noch nicht ab. Was auch verstaendlich ist, es duerfte etwas schwierig sein die Seiteneffekte selbstgebastelter Operatoren abzusehen.
Vielleicht sollte man dem egcs Team mal den Vorschlag machen sowas leichter steuerbar zu gestalten. Ich kenne zuviele Algorithmen, die auf bestimmten Reihenfolgen und Verhaltensweisen basieren, einige Leute nennen soeinen Stil "raffiniert" - zugegeben, oft gehoere ich auch dazu.
Konrad