我正在尝试祝福一个字符串变量 - 在下面的代码中演示。当我使用哈希或数组时,Bless似乎只能工作。你被允许保佑弦乐吗?如果不是,你有什么可以祝福的?我已经调试了一段时间,任何帮助将不胜感激。 :-)如果我在代码中出错,请告诉我它是什么。
这是一个perl文件。代码未完成,但它从未到达“页面结束”语句。所以我不再延长它。 $ FileInfo是一个早先从文件中读取的数组,但由于语法在这里乱码。
这是调用构建ojbect引用
$page = new GeneratePages(0);
package GeneratePages;
sub new
{
my $class = shift;
my $pageContents = $FileInfo[shift];
bless $pageContents, $class;
return $pageContents;
}
答案 0 :(得分:11)
Bless仅适用于引用。来自perldoc bless:
这个功能告诉了它 REF引用它现在是一个 CLASSNAME包中的对象。
因此,如果您想将字符串用作对象,则应将对它的引用传递给bless
:
my $s = "foo"; # $s is a scalar variable
my $o = bless \$s, $class; # $s is now an object in the $class package