perl – 作为Array返回的Moose ArrayRef属性

我有一个Moose类,其属性是一个ArrayRef(只读),并由对象内部操作.但是当有人调用访问器方法时,我希望它返回一个数组(或列表)而不是引用.这不仅会减少类的用户必须执行的解除引用量,而且还意味着它们不会意外地篡改我的对象使用的相同引用.

那么最好的方法是什么?某种强制?

解决方法

使用 Moose::Meta::Attribute::Native::Trait::Array和委托,例如
handles => { my_array => 'elements' }

(通过#moose上的doy)

如果在标量上下文中调用访问器,则auto_deref具有仍然返回引用的不良行为.

相关文章

1. 如何去重 #!/usr/bin/perl use strict; my %hash; while(...
最近写了一个perl脚本,实现的功能是将表格中其中两列的数据...
表的数据字典格式如下:如果手动写MySQL建表语句,确认麻烦,...
巡检类工作经常会出具日报,最近在原有日报的基础上又新增了...
在实际生产环境中,常常需要从后台日志中截取报文,报文的形...
最近写的一个perl程序,通过关键词匹配统计其出现的频率,让...