すぐわかる オブジェクト指向 Perl 第12章 演算子のオーバーロード
おぉ
- 前章で作ったセッターとゲッターをひとつのサブルーチン(メソッド)にまとめる。
- セッターかゲッターかは、呼ばれた時の引数の数で判断する
- かっこいい!無駄が無い!クール!
うおお・・・
- 演算子のオーバーロードで、同じオブジェクトでも別な内容を応答する、という例題
- 数字を期待されているのか、文字列を期待されているのか、というのをオブジェクト自体が判断して適切な値を返す、ようにオーバーロードを設定する
- 正直、自信無い、凄すぎる・・・
use overload '""' => "toString", '0+' => "toNumber"; sub toString { my $self = shift; my $a = $self->{a}; my $b = $self->{b}; my $c = $self->{c}; return ("($a,$b,$c)"); } sub toNumber { my $self = shift; return ($self->{s}); }
- 抜粋して書くとこう。
- うん、正直使いこなせる気がしねぇ・・・