Thread strict und my (52 answers)
Opened by jan10001 at 2003-10-05 22:02

Strat
 2003-10-07 14:40
#61262 #61262
User since
2003-08-04
5246 Artikel
ModeratorIn
[Homepage] [default_avatar]
haeufig kann ich jedoch ueber den folgenden Weg auf eine globale Variable verzichten, indem ich closures verwende:
Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
{ # closure for caching
 my %userCache = ();

 sub GetUserData {
   my $id = shift;

   unless (exists $userCache{$id}) {
     $userCache{$id} = &FetchInfoFromDatabase($id};
   } # unless

   return $userCache{$id};

 } # GetUserData

} # closure for caching

Da ist %userCache nur in dem closure-Block zu sehen, und nicht von ausserhalb, aber fuer GetUserData nimmt es eine aehnliche Rolle wie eine globale Variable ein...\n\n

<!--EDIT|Strat|1065523265-->
perl -le "s::*erlco'unaty.'.dk':e,y;*kn:ai;penmic;;print"
http://www.fabiani.net/

View full thread strict und my