🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Thread View: pl.comp.lang.perl
5 messages
5 total messages Started by root Wed, 22 Oct 1997 11:54
tablica tablic
#613
Author: root
Date: Wed, 22 Oct 1997 11:54
11 lines
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
#614
Author: Mariusz Krukowski
Date: Wed, 22 Oct 1997 12:01
13 lines
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
#615
Author: Krzysztof
Date: Wed, 22 Oct 1997 13:12
9 lines
695 bytes
wrote:
> 
> Czesc,
> 

A, i jeszcze jedno, nigdy nie wiadomo ile bedzie rekordow w tablicy
%COS, jest tworzona dynamicznie.

Krzysztof
Re: tablica tablic
#616
Author: Mariusz Krukowski
Date: Wed, 22 Oct 1997 13:27
7 lines
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
#617
Author: Krzysztof Osiecki
Date: Thu, 23 Oct 1997 02:28
43 lines
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