[Moscow.pm] XS как переименовать модуль?

Ivan Petrov i.petro.77.00 на gmail.com
Пн Янв 31 23:01:18 PST 2011


> $str = 0x1000; $str = '';

а вот это не совсем то, вернее совсем не то.

одно дело при создании скаляра - выделить заранее память, а совсем другое
дело - выделить память *и заполнить ее значением*.

используя XS можно сделать первое, а вот данная конструкция делает второе.

то же самое и с массивами. когда мы пишем $#a = 1000; реально создается 1000
скаляров и если затем сказать push @a => $b; то $b запишется по 1001
индексу,

а вот если мы в C скажем av_extend(a, 1000), а затем следом av_push(a, b),
то в результате у нас будет массив из одного элемента, но не требующий
переаллокации до тех пор пока не допушимся до 1000-го элемента
----------- следущая часть -----------
Вложение в формате HTML было извлечено…
URL: <http://mail.pm.org/pipermail/moscow-pm/attachments/20110201/391bb6a6/attachment.html>


Подробная информация о списке рассылки Moscow-pm