私は静的配列のまともな定義を探していました。msdnおよびc#ソースを使用してみましたが、定義が見つからないようです。例を示していますが、定義はありません...
静的配列のリンクや定義、特性を知っている人はいますか?
私は静的配列のまともな定義を探していました。msdnおよびc#ソースを使用してみましたが、定義が見つからないようです。例を示していますが、定義はありません...
静的配列のリンクや定義、特性を知っている人はいますか?
「静的配列」について話すとき、実際には2つの別々のことについて話していることになります。
1つはstatic
キーワードです。変数に適用される場合、これは変数がclass
レベルに存在し、そのタイプの各オブジェクトが独自のインスタンスを取得しないことを意味します。
Anarray
は、あるタイプの複数の値を保持するための単なるデータ構造です。
したがって、astatic array
は、いくつかのデータ型の複数を保持できるクラスレベルの単なる配列です。
例えば:
あなたのTravelRoute
クラスでは、ルートに設定された数の可能な目的地があるかもしれません。これらは次のように定義できます。
class TravelRoute {
public static Destination[] possibleDestinations =
new Destination[]{
new Destination("New York"),
new Destination("Minneapolis"),
new Destination("NParis")
};
}
これにより、で可能な宛先が定義されますTravelRoute
。次に、次のようにアレイにアクセスできます。
Destination one = TravelRoute.possibleDestinations[0];
固定サイズの配列を意味するのでしょうか?
unsafe struct Foo
{
fixed int Values[8];
}
その場合、クエリとして固定サイズの配列を使用すると、より多くの検索結果が得られます:)
静的配列自体に特別なことは何もありません(私が知っていることです)。そのため、静的配列に関する適切な記述を見つけるのに苦労している可能性があります。私が間違っている場合は訂正してください。しかし、あなたが最も興味を持っているのは「静的」な部分なのだろうか?基本的に、静的とは、メンバーがインスタンスレベルではなくクラスレベルに存在することを意味します。したがって、静的配列は、(クラスのインスタンスではなく)クラスに属する配列になります。
例:
public class Foo
{
public static int[] Numbers {get; set;}
}
public class Bar
{
public int[] Numbers {get;set;}
}
public class Program
{
public void Main()
{
// NOTE: Foo itself has this array
Foo.Numbers = new int[]{1,2,3};
// NOTE: it's this particular instance of a Bar that has this array
Bar bar = new Bar();
bar.Numbers = new int[]{1,2,3};
}
}