タグ

NAMEと作成方法に関するj708のブックマーク (1)

  • アクセサの作り方のまとめ - Unknown::Programming

    アクセサ(2) AUTOLOAD でアクセサ - ぱるも日記 アクセサの作成方法はいろいろあるけど自作するならAUTOLOADとか使わずに、 package Hoge::Class; use strict; for my $method (qw/age name tel hoge/) { my $code = sub { my $self = shift; $self->{$method} = shift if @_; return $self->{$method}; }; no strict 'refs'; *{$method} = $code; } って感じでクロージャと型グロブで定義すればいいかと。 AUTOLOAD使うなら使うで、初回呼び出し時にメソッド定義してしまうのがセオリーなんで、 二度目以降はAUTOLOADが呼び出されなくなるから遅いという問題は解決するかと。 sub A

    アクセサの作り方のまとめ - Unknown::Programming
  • 1