Class::Accessor
コンストラクタとか毎回書くのが面倒で、何とかならないかなーと思っていたところでこれを発見。おお、便利だ!
use base qw/Class::Accessor/; __PACKAGE__ -> follow_best_practice; __PACKAGE__ -> mk_accessors( qw ( foo ) ); __PACKAGE__ -> new ({ foo => 45 }); # 初期値を代入 sub test{ my $self = shift; # オブジェクトへのリファレンス # getアクセサ print $self -> get_foo(); # 45 # setアクセサ $self -> set_foo(30); print $self -> get_foo(); # 30 }
follow_best_practiceってするとget_,set_を付けないと駄目になるらしいよ。これは無いと気持ち悪いので、私は必須!