2016-06-07 79 views
1
foreach my $tp (@tpList) 
{ 
print "inside function 14"; 
my $result1_fail = ""; 
$_=$tp; 
next if(/^$/); 
print "TP : $tp\n"; 
$result.="<h3>$tp</h3><BR>\n"; 
$result1_fail.="<h3>$tp</h3><BR>\n"; 
#------------------------------# 
print "inside function 15"; 
***my @emptytables=(); 
my @tables=();*** 
@tables= getAllTables4TP($tp); 
  • 请解释my @ emptytables =()的含义。
  • 而且我的@ tables =();
  • 这是用来定义一些空数组吗?
  • 如果是,那么它有什么用?
+2

也许你想了解[Perl数据结构(http://perldoc.perl.org/perldata.html),并使用[我的](http://perldoc.perl.org/functions/my.html)来声明变量。 – PerlDuck

回答

3
  • my @tables;创建一个空的阵列
  • my @tables =();创建一个空的阵列,然后用无(清空它)替换其内容。
  • my @tables =(); @tables = getAllTables4TP($tp);创建一个空数组,然后将其内容替换为空,然后用其他内容替换其内容。

我将只使用下列内容:

my @tables = getAllTables4TP($tp); 
5

这些数组初始化为空,如果接下来的事情是数组赋值,它基本上是无用的。我会写

my @tables = getAllTables4TP($tp); 

我不能说任何关于@emptytables,因为我没有看到使用它的代码。

2

是的你是正确的,它定义了一个空数组。

检查这部分

my @tables=(); 
@tables= getAllTables4TP($tp); 

在这里,数据插入完成到表阵列。可以直接写上面的行作为一行:

my @tables= getAllTables4TP($tp);