Thread View: pl.comp.lang.perl
5 messages
5 total messages
Started by root
Wed, 22 Oct 1997 11:54
tablica tablic
Author: root
Date: Wed, 22 Oct 1997 11:54
Date: Wed, 22 Oct 1997 11:54
11 lines
741 bytes
741 bytes
Czesc,
Czy ktos wie jak zrobic tablce tablic, a dokladniej:
mam sobie tablice %COS, gdzie $COS{name} = value i chcialbym zeby value
bylo tablica %COSTAM
Czy jest to osiagalne w perlu, a jezeli nie to czy sa inne alternatywne
rozwiazania?
Krzysztof
Re: tablica tablic
Author: Mariusz Krukowski
Date: Wed, 22 Oct 1997 12:01
Date: Wed, 22 Oct 1997 12:01
13 lines
895 bytes
895 bytes
root wrote:
>
> Czesc,
>
> Czy ktos wie jak zrobic tablce tablic, a dokladniej:
>
> mam sobie tablice %COS, gdzie $COS{name} = value i chcialbym zeby value
> bylo tablica %COSTAM
>
> Czy jest to osiagalne w perlu, a jezeli nie to czy sa inne alternatywne
> rozwiazania?
Poniekad jest. Do glownej tablicy wpisuje sie referencje do 'podtablic'.
Re: tablica tablic
Author: Krzysztof
Date: Wed, 22 Oct 1997 13:12
Date: Wed, 22 Oct 1997 13:12
9 lines
695 bytes
695 bytes
wrote: > > Czesc, > A, i jeszcze jedno, nigdy nie wiadomo ile bedzie rekordow w tablicy %COS, jest tworzona dynamicznie. Krzysztof
Re: tablica tablic
Author: Mariusz Krukowski
Date: Wed, 22 Oct 1997 13:27
Date: Wed, 22 Oct 1997 13:27
7 lines
800 bytes
800 bytes
Krzysztof wrote: > A, i jeszcze jedno, nigdy nie wiadomo ile bedzie rekordow w tablicy > %COS, jest tworzona dynamicznie. Nie ma problemu - zawsze mozna doczepic na koniec tablicy kolejna referencje.
Re: tablica tablic
Author: Krzysztof Osiecki
Date: Thu, 23 Oct 1997 02:28
Date: Thu, 23 Oct 1997 02:28
43 lines
1950 bytes
1950 bytes
Krzysztof (kzal@pol.pl) wrote:
: A, i jeszcze jedno, nigdy nie wiadomo ile bedzie rekordow w tablicy
: %COS, jest tworzona dynamicznie.
no to masz tutaj coś co powinno pomóc (mi pomogło)
Krzysztof.
From: kompas@galaxy.uci.agh.edu.pl (Piotr Piatkowski)
Newsgroups: pl.comp.lang.perl
Subject: Re: odpowiednik tablicy struktur
Poczytaj sobie man perldsc:
perldsc - Perl Data Structures Cookbook
There are separate sections on each of the following:
o arrays of arrays
o hashes of arrays
o arrays of hashes
o hashes of hashes
o more elaborate constructs
A ogólnie, to czego potrzebujesz będzie wyglądać mniej więcej tak:
$dane = [ { nazwa => "zzz", wersja => "1.00", ok => "y" },
{ nazwa => "yyy", wersja => "1.01", ok => "y" },
{ nazwa => "xxx", wersja => "0.99", ok => "n" } ];
push @$dane, { nazwa => "aaa", wersja => "2.01", ok => "y" };
print $dane->[1]{nazwa};
print $dane->[0]{wersja};
# Sortowanie po nazwie:
foreach $rekord ( sort { $a->{nazwa} cmp $b->{nazwa} } @$dane ) {
print join( " - ", ( $rekord->{nazwa}, $rekord->{wersja}, $rekord->{ok} ) );
print "\n";
}
P.S. Jeżeli nie wiesz nic na temat referencji, to najpierw radzę
poczytać man perlref
Thread Navigation
This is a paginated view of messages in the thread with full content displayed inline.
Messages are displayed in chronological order, with the original post highlighted in green.
Use pagination controls to navigate through all messages in large threads.
Back to All Threads