0

多数の配列を埋めるアプリケーションに取り組んでいます。しかし、元は VB6 アプリケーションであるため、それらのゼロ要素は使用しません。これは次のようなものを停止します

my_array.Min

正常に動作しません。アプリケーションの内部を改ざんする予定はありませんが、この種のステートメントで配列要素の範囲を指定できれば非常に便利です。何かのようなもの

my_array(1:100).Min

そのような構造は存在しますか? 存在する場合、それは何ですか?

4

1 に答える 1

2

残念ながら、.NETには便利な配列スライス構成1がありません(ただし、Linqを使用して近似できます)が、ここではXY問題で間違ったXを解決しています。

実際の解決策は、1ベースの配列を使用しないことです。アプリケーションの内部を変更してください

ちなみに、VB6のアレイのデフォルトベースゼロでした。Option Base 11ベースの配列を明示的に指定する必要がありました。


1ありますが、.NET 4.5より前では、この構造はインターフェイスをArraySegment(T)実装しておらず、使用できなかったため、完全に壊れていました。IList(T)現在はそれを実装していますが、手遅れです。誰もクラスを使用していません。

于 2013-03-13T15:47:40.500 に答える