所以我将数组引用传递给函数以清除某些数组元素:
代码如下:
if($ notes-> [$ x]!〜/ [^ CF] /){ 打印“$ notes-> [$ x] \ n”; 拼接(@ {$ notes}),…
首先
splice(@{$notes}), $x, 1;
应该
splice(@{$notes}, $x, 1);
这不是你问过的错误,但它是你展示的唯一错误。
导致您获得的错误消息的错误可能是一个不正确的循环。我相信你正在使用的东西
for (@$notes)
要么
for (0..$#$notes)
第一个是错误的,因为您不允许在迭代的数组中添加或删除元素。
第二个是错误的,因为它将执行循环体,因为数组最初具有元素,所以你最终会循环太多次。