Perlについての質問箱 49箱目
■ このスレッドは過去ログ倉庫に格納されています
0407デフォルトの名無しさん
2011/12/06(火) 14:43:06.36別の問題が出てきました。
下記を実行すると�@の箇所で以下のようなエラーが出ました。
Unknown encoding 'HOGE::FUGA=HASH(0x92ffb50)' at xxx.pm line ***
use base qw( Encode );をしているのでメインまでencodeが継承されるという認識なのですが、
認識間違いなのでしょうか?
HOGEパッケージのuse base qw( Encode );をメインで使うにはどのようにすればよいのでしょうか?
########################################
#メイン
use HOGE::FUGA;
my $hogehuga = HOGE::FUGA->new();
my $nihongo_utf8 = $hogefuga->encode('utf8','あああ'); #�@
########################################
package HOGE;
use base qw( Encode );
sub new{
my ( $object, @args ) = @_;
my $hash ={hoge => 'HOGEHOGE'};
bless $hash,$object;
}
########################################
package HOGE::FUGA;
use base qw( HOGE );
sub new{
my ( $object, @args ) = @_;
my $class = $object->SUPER::new( @args );
$class->{fuga} = 'FUGAFUGA';
return($class);
}
■ このスレッドは過去ログ倉庫に格納されています