私はこのようにアクセスしている3D配列を持っていますArray(int x, int y, int z)
。私はそれがxyzを持っているので、私はそれをこのように使用することができます:Array(struct xyz).
場合は、どのようにして、構造体を持つことが可能ですか?構造体を多次元配列インデックスとして使用する
私がこれを望んでいるのは、読んだり書いたりするほうが簡単で、書くのが簡単で、エラーが起こりにくいからです。より大きな画像を維持しやすくします。
独自のメソッドを持つクラスを作ることができることは知っていますが、多くのクラスがあり、それをそれぞれに適用すると、構造体を直接使用するとすぐに読みやすくなります。
例:
public struct xyz
{
public int x, y, z;
public xyz(int X, int Y, int Z)
{
x = X;
y = Y;
z = Z;
}
}
private void Test()
{
int(,,) Array = new int()
{
{
{0,0},
{0,0},
},
{
{0,0},
{0,0},
}
};
xyz XYZ = new xyz(0,0,0);
Array[XYZ] = 1; // this instead of
Array[XYZ.x, XYZ.y, XYZ.z] = 1 // this
}
は、なぜあなたはC#のケーシングのためのガイドラインのすべてを逆転していますか?それは気を散らしています... – x0n
できますか?いいえ、それは配列の仕組みではありません。しかし、それらを受け入れてそれらを使用する拡張メソッドを作成することができます。 –
質問がC#でタグ付けされている場合、なぜVBインデックス構文を使用していますか? – phoog