Thread if anweisung (16 answers)
Opened by Kathrin at 2005-01-24 12:34

Strat
 2005-01-27 00:30
#51214 #51214
User since
2003-08-04
5246 Artikel
ModeratorIn
[Homepage] [default_avatar]
@format_c: da hast du recht; es gibt uebrigens noch ein paar weitere, die eine niedrigere bindung als && bzw. || haben:
Code: (dl )
.. ... ?: = += -= *= .= usw. , => listenoperatoren not, and, or, xor

(ich hoffe, ich habe so ziemlich alle erwischt)

das ganze zeug braucht man sich aber nicht merken, weil 'or' die niedrigeste bindungskraft hat, und 'and' ein klein bisschen hoeher, und da kann man sich klammern so gut wie immer sparen und ist normalerweise auf der sicheren seite.

Ich verwende || bzw. && nur in konstrukten wie z.B.
Code: (dl )
1
2
3
my $value = shift || 'defaultValue'; # ev. achtung auf 0... warte ungeduldig auf // bzw. //=
# oder
$value ||= 'defaultValue'; # ev. achtung auf 0

sonst verwende ich || bzw. && nie; perl kann eh schon ein arger zeichensalat sein:
Code (perl): (dl )
if ($x && $y || $z && $r || $p) {

finde ich haesslich, auch wenn es ein C-Programmierer schneller kapiert; aber die sprache heisst Perl und nicht C, und Perl ist viel reicher an syntax als C... warum die dann nicht zur besseren lesbarkeit einsetzen?
Code (perl): (dl )
if ($x and $y or $z and $r or $p) {

finde ich besser lesbar, aber das wuerde ich sogar mit klammern schreiben

Code (perl): (dl )
if ( ($x and $y) or ($z and $r) or $p) {

dann sieht man schon auf den ersten blick alles, und braucht nicht mehr nachzudenken...\n\n

<!--EDIT|Strat|1106778826-->
perl -le "s::*erlco'unaty.'.dk':e,y;*kn:ai;penmic;;print"
http://www.fabiani.net/

View full thread if anweisung