URL: https://www.opennet.ru/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID9
Нить номер: 7894
[ Назад ]

Исходное сообщение
"Передать handler потока в функцию"

Отправлено jr , 10-Фев-09 11:35 
Нужно в функцию передать handler потока, а потом в ней записать что-то в этот поток. Но с "use strict" пример ниже не работает:
Can't use string ("FILE") as a symbol ref while "strict refs" in use at ./test.pl line 11
Как с "use strict" сделать это?

#!/usr/bin/perl

use strict;

open( FILE, ">test.txt" ) or die 'Cannot open file';
get_info( 'FILE' );
close FILE;

sub get_info {
   my $handler = shift;
   print $handler "test";
}



Содержание

Сообщения в этом обсуждении
"Передать handler потока в функцию"
Отправлено NuINu , 10-Фев-09 11:45 
>[оверквотинг удален]
>use strict;
>
>open( FILE, ">test.txt" ) or die 'Cannot open file';
>get_info( 'FILE' );
>close FILE;
>
>sub get_info {
>   my $handler = shift;
>   print $handler "test";
>}

get_info( \*FILE );


"Передать handler потока в функцию"
Отправлено jr , 11-Фев-09 17:14 
>[оверквотинг удален]
>>open( FILE, ">test.txt" ) or die 'Cannot open file';
>>get_info( 'FILE' );
>>close FILE;
>>
>>sub get_info {
>>   my $handler = shift;
>>   print $handler "test";
>>}
>
>get_info( \*FILE );

спасибо!