获取数组长度时在无效上下文中无用地使用私有数组

Useless use of private array in void context when getting array length

我正在尝试创建一个循环,当 @arr1@arr2 的长度均为零时停止。我收到此警告消息

Useless use of private array in void context

当我使用这个

while (scalar (@arr1, @arr2) ) {
  #more code
}

为什么我会收到警告?

scalar 接受一个参数。你要用的复杂一点

while (scalar @arr1 or scalar @arr2)

幸运的是相当于更短

while (@arr1 or @arr2)