私はList<T>
から派生したコレクションクラスを持っており、そのコレクションのインスタンスにパッケージaction
を実行する必要があります。コレクションを分割して部品にaction
を実行したい)。アクションには型付きのシグネチャがあることに注意してください。これは、同じ型のコレクションを予期する、あらかじめ定義されたメソッドです。Cでコピーを作成せずにリストの一部を取得する方法
私は
target.addRange(source.getRange(start, packageSize);
を知っているが、このために、私は新しいコレクションのインスタンスを必要とし、リストのエントリのコピーを作成しますので、それは私が欲しいものではありません。私はアクションがどのような方法でリストを操作しないであろうことを知っていますので、私はこれらが「唯一」の参照を知っている(リストエントリのコピーを作成しないように意図して
action(source.Reference(fromIndex, toIndex);
ような何かをするpreferrたいですC#でこれを行う方法はありますか?
もちろん、範囲を取得する方法を知っているaction
にメソッドを渡すことはできますが、アクションは自分の意図について知る必要はありません実行を部分に細分化します。
フィードバックに感謝します。あなたがdownvoteを説明するなら、私は質問を書く次の時間にaccoutにあなたの批評を取ることができます。 – Thomas
_これらは「唯一の」参考文献であることを知っています。これは心配しないでください。これらの参照を常にコピーし、必要のない問題は解決しないでください。 –
@HenkHolterman入力いただきありがとうございます。私は、私が得た答えからの示唆を使って、これが違いを生むかどうかをチェックします。プログラムは、一般的なPCではなく、限られたリソース(CPUの周波数とメモリ)を持つデバイス上で実行する必要があります。そのため、あらゆる種類のリソースで貪欲になるという習慣を開発しました。 – Thomas