ЭЛЕКТРОННАЯ БИБЛИОТЕКА КОАПП |
Сборники Художественной, Технической, Справочной, Английской, Нормативной, Исторической, и др. литературы. |
10.8. Skipping Selected Return ValuesProblemYou have a function that returns many values, but you only care about some of them. The SolutionEither assign to a list with ($a, undef, $c) = func(); or else take a slice of the return list, selecting only what you want: ($a, $c) = (func())[0,2]; DiscussionUsing dummy temporary variables is wasteful: ($dev,$ino,$DUMMY,$DUMMY,$uid) = stat($filename); Use ($dev,$ino,undef,undef,$uid) = stat($filename); Or take a slice, selecting just the values you care about: ($dev,$ino,$uid,$gid) = (stat($filename))[0,1,4,5]; If you want to put an expression into list context and discard all its return values (calling it simply for side effects), as of version 5.004 you can assign to the empty list: () = some_function(); See AlsoThe discussion on |