私はこのような構造体の2D配列を持っています、
MapStruct myMap[50][50];
したがって、このように初期化できます。
myMap[0][0].left = 0;
myMap[0][0].up = 1;
myMap[0][0].right = 5;
以下の例も使用できることを知っています。
MapStruct myMap[50][50] = { {0,1,5}, {2,3,7}, {9,11,8} ... };
しかし、問題は、この50x50構造にかなりの空のスポットがあることです。たとえば、[30][40]から[40][50]までは空で、他のいくつかのポイントは空であるため、上記の角かっこ表記では、この{}、{}のように空の角かっこを残す必要があります。 {}それらの空のスポット。
今私の質問は、以下のようなものを初期化する方法はありますか?
myMap[0][0] = {0, 1, 5}; // gives a syntax error
ポイントごとに2行節約できます。とても満足しています。
追伸:辞書オブジェクトのようにインデックスmyMap [x] [y]をキーとして使用しているので、インデックスが変更されるため、途中で空のインデックスを削除することはできません。