I'm afraid that your code as supplied doesn't compile for me. Using Class::Struct 0.65 with perl v5.20.3 I see:

syntax error at 11123269.pl line 11, near "struct Carrier_Info" Execution of 11123269.pl aborted due to compilation errors.

This seems reasonable because the documentation suggests that the arguments to struct should be within brackets. Is this really the code you are running?

Update: here's an SSCCE showing what I think you expect to be output.

#!/usr/bin/env perl use strict; use warnings; package Carrier_Info; use Class::Struct; struct (Carrier_Info => { name => '$', abbrev => '$', }); my $aa = "TH"; my @carriers; push @carriers, Carrier_Info->new(name => "Paul Lalli", abbrev =>"PL") +; push @carriers, Carrier_Info->new(name => "Travis Hervey", abbrev=> $a +a); my $xyz = pop(@carriers); my $ppp = $xyz->name; print "which name is $ppp\n";

I won't claim this is the neatest as I never use Class::Struct directly but hopefully it will serve as an illustration.


In reply to Re: Can't write values from sorted array of structs by hippo
in thread Can't write values from sorted array of structs by maschwarz

Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post; it's "PerlMonks-approved HTML":