use Class::Struct;
struct(TradeId => [
tradeIdScheme => '$',
id => '$',
]);
struct(VersionedTradeId => [
tradeId => 'TradeId',
version => '$',
effectiveDate => '@',
]);
我想在'VersionedTradeId'结构中创建一个'TradeId'数组。
答案 0 :(得分:1)
试试这个:http://www.nntp.perl.org/group/perl.beginners/2007/09/msg95440.html
参见Class :: Struct docs中的示例1:
示例1
为struct元素提供一个也是结构的类类型是嵌套结构的方式。这里,Timeval表示时间(秒和微秒),Rusage有两个元素,每个元素都是Timeval类型。
use Class::Struct;
struct( Rusage => {
ru_utime => '@', # user time used
ru_stime => 'Timeval', # system time used
});
struct( Timeval => [
tv_secs => '$', # seconds
tv_usecs => '$', # microseconds
]);
# create an object:
my $t = Rusage->new(ru_utime=>[Timeval->new(), Timeval->new(), Timeval->new()], ru_stime=>Timeval->new());
# $t->ru_utime and $t->ru_stime are objects of type Timeval.
# set $t->ru_utime to 100.0 sec and $t->ru_stime to 5.0 sec.
$t->ru_utime->tv_secs(100);
$t->ru_utime->tv_usecs(0);
$t->ru_stime->tv_secs(5);
$t->ru_stime->tv_usecs(0);