LINUX.ORG.RU

История изменений

Исправление gh0stwizard, (текущая версия) :

#!/usr/bin/perl
# your code goes here

$\ = "\n";

sub fnc {
	print "fnc";
}

&fnc();

*main::fnc = sub {
	print "modified";
};

&fnc();

http://ideone.com/yKt3Om

Перл-хакинг (и бэд-стайл), не благодари.

P.S. Не будет работать в мультипотоках, а также при всяких таймерах, событийках и т.п., т.к. постоянно надо будет делать переопределение функции.

P.S.II. Используй анонимные функции $cb = sub {} они дешевле, чем изврат, что выше я написал.

Исправление gh0stwizard, :

#!/usr/bin/perl
# your code goes here

$\ = "\n";

sub fnc {
	print "fnc";
}

&fnc();

*main::fnc = sub {
	print "modified";
};

&fnc();

http://ideone.com/yKt3Om

Перл-хакинг (и бэд-стайл), не благодари.

P.S. Не будет работать в мультипотоках, а также при всяких таймерах, событийках и т.п., т.к. постоянно надо будет делать переопределение функции.

Исправление gh0stwizard, :

#!/usr/bin/perl
# your code goes here

$\ = "\n";

sub fnc {
	print "fnc";
}

&fnc();

*main::fnc = sub {
	print "modified";
};

&fnc();

http://ideone.com/yKt3Om

Перл-хакинг (и бэд-стайл), не благодари.

Исходная версия gh0stwizard, :

Welcome to Perl's World!

#!/usr/bin/perl
# your code goes here

$\ = "\n";

sub fnc {
	print "fnc";
}

&fnc();

*main::fnc = sub {
	print "modified";
};

&fnc();

http://ideone.com/yKt3Om

Перл-хакинг, не благодари.