use strict;
use warnings;
my $counter = 1;
print "With ++\$counter was 1 and returns ", ++$counter, "\n";
print "\$counter now contains: $counter\n\n";
$counter = 1;
print "With \$counter++ was 1 and returns ", $counter++, "\n";
print "\$counter now contains: $counter\n";
Prints:
With ++$counter was 1 and returns 2
$counter now contains: 2
With $counter++ was 1 and returns 1
$counter now contains: 2
See it? With pre increment (++$counter) the increment happens before the value is returned so you get the updated value. With post increment the value before incrementing is returned. If you are not using the returned value it doesn't matter which version you use in terms of how the code works, but it does make a difference to how easily the code is understood. Because we tend to take more notice of the first things on a line sticking the operator out the front makes it more visible and thus easier to understand.
Perl is the programming world's equivalent of English
|