希望赐教perl中赋值后又undef的原因

希望赐教perl中赋值后又undef的原因

希望赐教perl中赋值后又undef的原因
pre_Complex.pm文件如下
--------------------------------------------
package pre_Complex;
use Exporter;
@ISA=(Exporter);
@EXPORT_OK=(create,display);

sub create
{
my ($r, $i)=@_;
my ($complex)={
real => $r,
imag => $i
};
[color=red]$complex;[/color]
}

sub display
{
my($ref)=@_;
print $ref->{real}, "+", $ref->{imag}, "i";
}
l;
-----------------------------------------------------------------

pre_useComplex.pl文件如下
------------------------------------------------------------------
use pre_Complex (create, display);

$x = create(12,29);
display($x);
[color=#800000]
请问如上面的pm文件中红色的$complex;语句有什么作用?
去掉以后为何pl执行没有返回值?
对于undef的概念不是很清楚,请赐教,在线等[/color]




   

这个模块的作用是模拟一个.
这个模块的作用是模拟一个复数的结构,在外部引用,调用pm中的方法去执行。

选自<<ActiveState--Programming Perl In The .Net Enviroment>>第148页[CCB]10[/CCB]
。[CCB]11[/CCB]算了,去别的论坛了问了
请问如上面的pm文件中红.
请问如上面的pm文件中红色的$complex;语句有什么作用?
去掉以后为何pl执行没有返回值?


就是回值,基本上你知道的……