Perl: ссылка / благословение
-
28-09-2019 - |
Вопрос
Идея состоит в том, чтобы реализовать класс, полученный список [массивов, нить :: конвейерные очереди и другие вещи] в конструкторе Tiehash,
use AbstractHash;
tie(%DATA, 'AbstractHash', \@a1, \@a2, \$tcq);
Какой правильный способ пройти ссылки на объекты (например, упомянутые Тема :: Конвейер Объекты) Таким образом, массивные ссылки на конструктор, поэтому он может получить доступ к объектам? Любые случаи, когда пропущенный объект должен быть благословен?
Решение
Насколько я могу сказать, объекты не являются объектами, если они не bless
-ЕДи
Что сказал, аргумент конструктора просто будет армарефом Thread::Conveyor
объекты:
my $data = AbstractHash->tie ( \@a1, \@a2, \$tcq );
где конструктор определяется в AbstractHash
упаковка:
sub tie {
my $class = shift; # Implicit variable, don't forget
my $data = {
someArray => +shift,
queues => +shift,
someValue => +shift,
};
# $data starts life as a hashref, make it an 'AbstractHash'
bless $data, $class; # $data is no longer a hashref
return $data; # AbstractHash object returned
}
Не связан с StackOverflow