Thread 80 Mio Zeilen einlesen (24 answers)
Opened by FanClub at 2013-07-16 10:17

Muffi
 2014-02-06 10:35
#173399 #173399
User since
2012-07-18
1465 articles
BenutzerIn
[default_avatar]
Kleines Testprogramm geschrieben und festgestellt: Optimiert er scheinbar (zumindest in dem Fall) nicht.

Code (perl): (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
{
        package IterTest; 
        use overload '<>' => \&iterator, fallback => 1;
        
        my $x = 0;
        
        sub new {
                return bless {}, shift;
        }
        
        sub iterator {
                print "Angefragt!\n";
                if ($x++ < 10) {
                        return $x;
                }
                else {
                        return undef;
                }
        }
}

my $test = IterTest->new();
for my $num (<$test>) {
        print "$num\n";
}


Ausgabe:
Angefragt!
1

edit: Allerdings verhält sich dieser overload auch nicht 100% gleich zum Operator. wantarray kann er ja auch nicht.
Last edited: 2014-02-06 10:47:30 +0100 (CET)
1 + 1 = 10

View full thread 80 Mio Zeilen einlesen