Seite 4 von 6

Verfasst: 15.04.2006 18:02
von uweb
@ jear : Deine Frage wurde doch schon beantwortet.
Zwischen "ist völlig falsch" und "ich finde es sollte andes sein" gibt es einen feinen Unterschied.

Ich finde zwar auch bei

Code: Alles auswählen

a = 50
b = a > 60
Debug b 
sollte 0 raus kommen.

Falsch finde ich es aber nicht, da a > 60 im Gegensatz zu z.B. C nicht als Ausdruck der einen Wert repräsentiert definiert ist.

Falsch finde ich es hingegen anderen ständig das Wort im Mund herum zu drehen, C als eine nicht erwachsene Programmiersprache zu bezeichnen, sich gegen alles zu wehren das einen vom maulen abhalten könnte, ...

Verfasst: 15.04.2006 18:06
von mk-soft
@jear

Sollte sich Fred mal anschauen. Gebe dir recht.

Verfasst: 15.04.2006 18:08
von IngolfZ
Vorsicht Jürgen (jear)
bei

Code: Alles auswählen

a = 50 :  Debug (a = 60)
ist die Ausgabe 60 richtig. Das ist nämlich kein Vergleich, sondern eine Zuweisung.

Kannst du mal ein "erwachsenes" Beispiel posten, wo du genau sowas brauchst.
Ich bezweifle nämlich, dass das was du willst zu einem übersichtlichen und verständlichen Code führt.

Verfasst: 15.04.2006 18:46
von jear
...wie gesagt

Code: Alles auswählen

DisableGadget(#ggg, a > 60)
und tausend andere Anwenungen, die jetzt nur mit "If : Else : EndIf"-Konstruktionen bewältigt werden können.

Verfasst: 15.04.2006 18:58
von ts-soft
Und was ist hiermit:

Code: Alles auswählen

DisableGadget(#ggg, a = 60)
Zuweisung oder Vergleich?
Vielleicht sollten dann die Zuweisungen auch im Basicstil erfolgen:

Code: Alles auswählen

Let a = 60
:mrgreen:

Verfasst: 15.04.2006 19:10
von mk-soft
Eine Zuweisung in einem Ausdruck kann nicht sein.
Sonst wäre "If a = 60" auch eine Zuweisung und das ist Blödsinn

Zur Zeit ist eindeutig geregelt das eine Vergleichsoperation NICHT in einer mathematischen Operation ausführt wird.
Das einzige ist das der Compiler dieses nicht als Fehler Meldet.

Verfasst: 15.04.2006 19:28
von IngolfZ
Ich ziehe meinen Einwand, dass Debug (a=60) eine Zuweisung beinhaltet zurück. Es stimmt nicht :oops:

Beispiel:

Code: Alles auswählen

a = 1
Debug (a=60)
Debug a
zeigt die erste Ausgabe mit "60" und die zweite mit "1"

Verfasst: 15.04.2006 20:43
von uweb
das ist Blödsinn
Wieso herrscht den heute so ein rauher Ton ?

Ok, ich war zu jear auch nicht durchgehend nett aber erst nachdem er mich für meinen Hilfeversuch angemacht hat.

Hey, es ist Ostern !

Laßt uns jetzt bitte wieder alle lieb zueinander sein.
:)

Verfasst: 15.04.2006 20:50
von mk-soft
Ab zum Osterfeuer :allright:

Bis dann :wink:

Verfasst: 15.04.2006 21:05
von jear
Und was ist hiermit:

DisableGadget(#ggg, a = 60)

Zuweisung oder Vergleich?
Das ist doch an so einer Stelle völlig eindeutig.
Es wird bei diesem Parameter #True oder #False erwartet. Warum löst PB den Ausdruck also nicht danach auf?

Code: Alles auswählen

DisableGadget(#ggg, (a = 60) Or #False) 
Löst es ja schließlich auch richtig auf!

P.S. Zum ersten Mal zurück vom Osterfeuer!