The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Индекс форумов
Составление сообщения

Исходное сообщение
"Странное поведение хеша в perl ???"
Отправлено tian, 25-Сен-19 09:16 
Приветствую!
Подскажите знающие - второй день мучаюсь, ничего не пойму.
Есть perl версии:
This is perl 5, version 18, subversion 1 (v5.18.1) built for x86_64-linux-thread-multi
Также есть такой простой код:
#!/usr/bin/perl
use strict;
use warnings;
use Data::Dumper;

my %hash_cl = ( fields=>{ id=>853, id_link=>890 } );
my %hash_cl_slave = %hash_cl;

print Dumper(\%hash_cl);
print "\n";
print Dumper(\%hash_cl_slave);
print "\n";

$hash_cl_slave{"fields"}{"id"} = $hash_cl_slave{"fields"}{"id_link"};

print Dumper(\%hash_cl);
print "\n";
print Dumper(\%hash_cl_slave);
print "\n";

На выходе имею следующее:
$VAR1 = {
          'fields' => {
                        'id_link' => 890,
                        'id' => 853
                      }
        };

$VAR1 = {
          'fields' => {
                        'id_link' => 890,
                        'id' => 853
                      }
        };

$VAR1 = {
          'fields' => {
                        'id_link' => 890,
                        'id' => 890
                      }
        };

$VAR1 = {
          'fields' => {
                        'id_link' => 890,
                        'id' => 890
                      }
        };

Вопрос таков: почему также меняется значение хеша $hash_cl{"fields"}{"id"} ???
Почему ???
Такое впечатление, что я не скопировал хеш, а ссылку создал, но ведь это не так.


 

Ваше сообщение
Имя*:
EMail:
Для отправки новых сообщений в текущей нити на email укажите знак ! перед адресом, например, !user@host.ru (!! - не показывать email).
Более тонкая настройка отправки ответов производится в профиле зарегистрированного участника форума.
Заголовок*:
Сообщение*:
 
При общении не допускается: неуважительное отношение к собеседнику, хамство, унизительное обращение, ненормативная лексика, переход на личности, агрессивное поведение, обесценивание собеседника, провоцирование флейма голословными и заведомо ложными заявлениями. Не отвечайте на сообщения, явно нарушающие правила - удаляются не только сами нарушения, но и все ответы на них. Лог модерирования.



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру