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