Thread delete $array[$i] (8 answers)
Opened by rosti at 2018-12-10 19:05

rosti
 2018-12-12 10:23
#189387 #189387
User since
2011-03-19
2541 articles
BenutzerIn
[Homepage]
user image
In Tie-Klassen geht das leider nicht über die gebundene Variable, denn dafür stehen nur die vordefinierten Funktionen wie DELETE zur Verfügung.

Was man aber machen kann ist der Aufruf einer Funktion über die Instanz. Letztere muss vorher herausgezogn werden:

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
use Data::Dumper;
$Data::Dumper::Sortkeys = 1;
use strict;
use warnings;
use Tie::Array;
use base qw(Tie::StdArray);



tie my @arr, 'main';
@arr = qw(foo bar baz);

# Extrahiere die Instanz
tied(@arr)->rm(0); # remove alias delete

print Dumper \@arr;

sub rm{
    my $self = shift;
    my $idx  = shift;
    splice @$self, $idx, 1;
}





MfG

.
Last edited: 2018-12-12 10:24:44 +0100 (CET)
http://rolfrost.de/framework
Postmodern MVC Framework für Perl5 mod_cgi, mod_fastcgi und mod_perl

View full thread delete $array[$i]