two face scalar の boolean での評価

package Bar;
use overload '0+' => sub { warn '0+' }, '""' => sub { warn '""' };
sub new { my $c = shift; bless [@_], $c }

package main;

if (Bar->new(2)) {
}

この場合、boolean での評価は 0+ が優先されます。

Published: 2008-12-16(Tue) 09:30