Ich habe einen Verweis auf ein großes Array, und einige der Elemente (von einem Index bis zum Ende) müssen verwendet werden, um neue Zeilen in einem DB einzufügen.Perl: Slice ein Array, ohne ein ganz neues Array zu erstellen
Gibt es trotzdem ich kann einen Verweis auf einen Teil eines größeren Array erstellen? Oder kann ich einen Teil eines Arrays mit der Funktion execute_array von DBI verwenden, ohne dass Perl Daten im Hintergrund kopiert?
Hier ist, was ich will, effizienter tun:
$sh->execute_array({}, [ @{$arrayref}[@indexes] ]);
(oh ich sehe, die Argumente sind eine Liste von "Spalten", wobei jede Spalte ein Verweis auf ein Array von Werten für diese Spalte ist.) – ikegami
Sieht aus wie Ihr Black Mage mein Huhn angreifen. ummm ... gebratenes Huhn ... – ikegami
Ich habe mich gefragt. Könnte ich nicht einfach etwas tun wie: '$ arrayref + = $ index; $ sh-> execute_array ({}, $ arrayref); ' Ich weiß, dass dieser genaue Code nicht funktionieren wird, weil Perl nicht C ist, aber das bedeutet nicht, dass ich nicht dasselbe erreichen kann. – Jonathon