ループで実行される前処理コードの平和があります。この平和なコードには 1 つの大きな配列が必要ですが、読み取り専用であり、操作目的ではありません。この配列は、ループの前に 1 回生成します。
ここで、このコードを関数に移動して、他のスクリプトで再度使用したいと思いますが、それをきれいな方法で行う方法はわかりませんが、それでもパフォーマンスは良好です:
- 関数自体で毎回この大きな配列を生成するのは良くありません。これは常に同じ配列であり、不要なオーバーヘッドが発生するためです。
- これは悪い習慣であるため、グローバル配列を使用したくありません
- したがって、関数を呼び出すたびにパラメーターとして渡すのが最善だと思います。
最後のオプションもあまり好きではありません。引数リストが乱雑になり、これによって引き起こされるオーバーヘッドがよくわからないからです。私が理解しているように、配列は毎回コピーされます-したがって、( & 演算子を使用して) 参照渡しすることをお勧めしますか?