Thread Umgang mit referenzierten Arrays: Schön schreiben No. 2 (8 answers)
Opened by Sven_123 at 2011-09-30 11:50

pq
 2011-10-01 11:37
#152816 #152816
User since
2003-08-04
12208 Artikel
Admin1
[Homepage]
user image
das sieht alles wahnsinnig umständlich und leider auch unleserlich aus.

du soltest deinem code hier und da ein paar leerzeichen gönnen. die kosten nix.

bei deiner referenz-variante benutzt du auch eine referenz zuviel.
$vars{'gradient'}{$mode} ist schon eine referenz.

und warum erstellst du eine variable $curr_grad, wenn du sie dann nur fürs print benutzt und nicht fürs befüllen?

Code (perl): (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#!/usr/bin/perl
use strict;
use warnings;
use Data::Dumper;

# Referenz
{
    my %vars;
    my $mode = 1;
    my $curr_grad = $vars{gradient}->{$mode};

    # ...tu was...
    # $vars{gradient}->{1} = [ [1, 1, 1], [1, 2, 3] ];
    @$curr_grad = ( [1, 1, 1], [1, 2, 3] );

    print $curr_grad->[1]->[1]++, "\n";
    print $vars{gradient}->{$mode}->[1]->[1], "\n";
}


habe es mal so formatiert, wie es in meinen augen *viel* leserlicher ist.
die pfeile zwischen den dereferenzierungen gehören für mich dazu.

zum befüllen habe ich $curr_grad (eine referenz auf ein anonymes array) direkt verwendet und die andere zeile auskommentiert.

edit: falls $vars{gradient}->{$mode} noch nicht existiert, musst du stattdessen schreiben:
my $curr_grad = $vars{gradient}->{$mode} = [];
Last edited: 2011-10-01 11:42:27 +0200 (CEST)
Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live. -- Damian Conway in "Perl Best Practices"
lesen: Wiki:Wie frage ich & perlintro Wiki:brian's Leitfaden für jedes Perl-Problem

View full thread Umgang mit referenzierten Arrays: Schön schreiben No. 2