Сравнение Идентичности Объектов В Perl

Тема в разделе "Perl программирование", создана пользователем seevi, 25 мар 2012.

  1. seevi

    seevi Гость

    Здравствуйте.
    Имеется два объекта $a и $b одного класса. Есть ли способ узнать, идентичны ли объекты, т.е. являются ли они одним и тем же объектом? В javascript для этого есть оператор ===. Если бы $a и $b были просто ссылками, можно было бы применить $a == $b, но для объектов это не работает - пишет, что операция == не перегружена.
     
  2. -master-

    -master- Well-Known Member

    Регистрация:
    14 янв 2012
    Сообщения:
    629
    Симпатии:
    18
    справку читали?
     
  3. seevi

    seevi Гость

    Нужную информацию нашел в мане к use overload, спасибо. Если в классе используется перегрузка, надо перегрузить также преобразование в число, возвращающее сам объект, типа

    <!--shcode--><pre><code class='perl'>use overload '0+' => sub { $_[0] };[/CODE]

    Тогда числовое сравнение == снова работает как проверка идентичности. Может, есть еще более прямой способ, но я его не знаю.
     
Загрузка...
Похожие Темы - Сравнение Идентичности Объектов
  1. Erlan
    Ответов:
    8
    Просмотров:
    1.638
  2. k85
    Ответов:
    2
    Просмотров:
    1.149
  3. clas
    Ответов:
    3
    Просмотров:
    1.602
  4. juk-777
    Ответов:
    29
    Просмотров:
    4.705
  5. aank10
    Ответов:
    3
    Просмотров:
    1.968

Поделиться этой страницей