Autoinkrement.
Roztocil Bohuslav
Bohuslav.Roztocil na tconsult.cz
Neděle Září 13 10:43:49 MEST 1998
No jo, ale ++ neni operator prirazeni. Pracuje nad L-hodnotou, u niz
je pouzit. neni tu zadna prava nebo leva strana.
$a++ odpovida Pascalovske funkci:
function increment(var a : integer) : integer;
begin
increment := a;
a := a + 1;
end;
a ++$a zase takoveto:
function increment(var a : integer) : integer;
begin
a := a + 1;
increment := a;
end;
Mozna ale, ze jsi chtel pouze do $b priradit hodnotu o jedna vyssi,
nez je ulozena v $a. Pak bys ale mel pouzit proste:
$b = $a + 1;
Bob
-----Original Message-----
From: daemon na pandion.vslib.cz [mailto:daemon na pandion.vslib.cz]On Behalf
Of silhavy na mtf.stuba.sk (Peter 'Sheehy' Silhavy)
Posted At: Saturday, September 12, 1998 2:06 PM
Posted To: cz.comp.lang.perl
Conversation: Autoinkrement.
Subject: Re: Autoinkrement.
Roztocil Bohuslav wrote:
>
> No protoze je to _autoinkrement_ ;-)
>
> Unarni operator ++, stejne jako v jazyce C, inkrementuje hodnotu
> L-hodnoty (napr. promenne), na kterou je pouzit.
>
> Navic ma vyraz s timto operatorem take hodnotu:
> * Je-li operator pred L-hodnotou, provede se nejprve inkrementace
> a potom se vrati hodnota promenne.
> * Je-li operator za L-hodnotou, vrati se nejprve jeji hodnota
> a pak se teprve provede inkrementace.
>
> Ale to preci znas, ne?
>
> Bob
Autoinkrement ako taky som pochopil, ale nebolo mi jasne, preco sa meni
$a.
V istej mudrej knihe citam:
"Pravy operand, moze byt lubovolny vyraz, ale lavy operand musi byt
platna L-hodnota. Najbeznejsim operatorom priradenia je proste
priradenie. URCI SA PRITOM HODNOTA VYRAZU NA PRAVEJ STRANE A NA TUTO
HODNOTU SA NASTAVI PREMENNA NA LAVEJ STRANE."
Nehovori sa tu o tom, ze by sa menila aj hodnota premennej na pravej
strane ...
Dufam, ze som to popisal tak, aby sa dalo z toho usudit o co mi ide.
Este raz vdaka.
--
.ooo0 0ooo. Peter Silhavy
( ) ( ) http://sheehy.mtf.stuba.sk
-\ (---) /--------------------------------------------<>
\_) (_/
Další informace o konferenci Perl