Главная страница


ru.perl

 
 - RU.PERL ----------------------------------------------------------------------
 From : Eugene Grosbein                      2:5006/1       23 Dec 2003  00:17:56
 To : All
 Subject : ссылки на строки
 -------------------------------------------------------------------------------- 
 
 
 Переменная $i в цикле принимает много разных (строковый) значений.
 От каждого значения вычисляется некоторая функция f($x), которая
 возвращает строку. Строка может быть длинная, но всего разных значений
 фукции f($x) может быть мало. Функция считается долго, а считать ее
 приходится очень часто. Поэтому логично хранить вычисленные значения в хеше
 $ff{$x} и при необходимости брать посчитанные из него, а не пересчитывать.
 
 Проблема в том, что значения f($x) бывают длинные и хранить их копии
 в хеше нет никакого смысла - память кушается сотнями мегабайт.
 Хочется хранить в хеше лишь ссылки на эти значения, по образу и подобию
 C-шных указателей, несколько байт всего.
 
 Как синтаксически корректно создать ссылку не на переменную, а на скаляр,
 который она сейчас содержит? Чтобы при изменении переменной разыменованная
 ссылка вернула бы старое значение?
 
 Если написать: $n=f($x); $ff{$x}=\$n, то $ff{$x} будет ссылкой на $n
 или на скаляр, который $n сейчас содержит?
  
 Eugene
 --- slrn/0.9.7.4 (FreeBSD)
  * Origin: Svyaz Service JSC (2:5006/1@fidonet)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 ссылки на строки   Eugene Grosbein   23 Dec 2003 00:17:56 
 ссылки на строки   Andrew Alakozow   22 Dec 2003 21:48:34 
 Re: ссылки на строки   Eugene Grosbein   23 Dec 2003 12:46:04 
 Re: ссылки на строки   Andrew Alakozow   23 Dec 2003 13:00:23 
 Re: ссылки на строки   Eugene Grosbein   23 Dec 2003 17:54:43 
 Re: ссылки на строки   Andrew Alakozow   23 Dec 2003 16:07:50 
 Re: ссылки на строки   Eugene Grosbein   23 Dec 2003 21:33:56 
 Re: ссылки на строки   Andrew Alakozow   23 Dec 2003 18:42:18 
 Re: ссылки на строки   Eugene Grosbein   23 Dec 2003 23:15:58 
 Re: ссылки на строки   Andrew Alakozow   23 Dec 2003 22:29:13 
 Re: ссылки на строки   Eugene Grosbein   24 Dec 2003 12:58:58 
 ссылки на строки   Renat Araslanow   24 Dec 2003 14:09:27 
 Re: ссылки на строки   Eugene Grosbein   24 Dec 2003 18:26:50 
 ссылки на строки   Renat Araslanow   24 Dec 2003 20:32:25 
 Re: ссылки на строки   Eugene Grosbein   24 Dec 2003 23:46:40 
 Re: ссылки на строки   Andrew Alakozow   24 Dec 2003 20:33:13 
 Re: ссылки на строки   Eugene Grosbein   25 Dec 2003 01:05:56 
 ссылки на строки   Renat Araslanow   25 Dec 2003 00:02:48 
 ссылки на строки   Renat Araslanow   24 Dec 2003 23:00:31 
 ссылки на строки   Dmitry Diskin   22 Dec 2003 23:04:43 
 Re: ссылки на строки   Eugene Grosbein   23 Dec 2003 12:36:23 
Архивное /ru.perl/2609330fe0dfc.html, оценка 1 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional