13.14 演算子のオーバーロード
自分が作成したクラスを継承しているオブジェクトにおいて、==や+などの使い慣れた演算子を使用したい。
- overloadプラグマを使用する
use overload '<=>' => \&threeway_compare; sub threeway_compare { my ($s1, $s2) = @_; return uc($s1->{NAME}) cmp uc($s2->{NAME}); }
自分が作成したクラスを継承しているオブジェクトにおいて、==や+などの使い慣れた演算子を使用したい。
use overload '<=>' => \&threeway_compare; sub threeway_compare { my ($s1, $s2) = @_; return uc($s1->{NAME}) cmp uc($s2->{NAME}); }