in reply to Re^2: Emptying (and refilling) an array.
in thread Emptying (and refilling) an array.
my @working; is the same as my @working = (); when @working doesn't exist. Once it does, the latter does seem to actually clear the array.
Not all. It's already cleared (but not deallocated) at the end of the last pass by the run-time effect of my. my @working = (); will never result in something different than my @working;.
(my @working = () if $x; is not necessarily the same as my @working if $x;, but that code is a buggy to begin with.)
Are you confusing my @working; with just @working;? I noticed you removed the "my". Removing the "my" is silly. It's not something you should do. At least add this test, please:
'my' => 'my @working; $working[$_] = $_ foreach ( 0...1 +00 );',
|
|---|