在Perl中,我知道的三种方法来测试对象是否相等:==,eq,和~~.所有这些告诉我1等于"1"在Perl 5中.
然而,1和"1"不一样的东西.我怎样才能比较两个对象,这样1等于1,"1"等于"1",1不等于"1"或2和"1"不等于"01"?Perls的答案将不胜感激.
ike*_*ami 11
别.在Perl中,一个是一个.基于值类型的多态性必然会失败.这就是为什么Perl有两个比较运算符,这就是为什么~~被打破[1].
例如,返回的标量!0包含三个值,一个存储为整数,一个存储为浮点数,另一个存储为字符串.
例如,类的一个对象package Foo; use overload '0+' => sub { 1 }, fallback => 1;可能不包含一个可言,但它被认为是一个以数字和字符串上下文.
| 归档时间: |
|
| 查看次数: |
305 次 |
| 最近记录: |