2

5 方向の配列を格納する必要がありますが、最も読みやすい方法は何でしょうか。私は配列を行うことができました

 int myDirection[100] = {0,1,2,3,4,5,4,4,3,4,0......etc  // poor readability 

または、定数を使用して行うこともできます

const up = 1;
const down = 2;  //... etc
int myDirection[100] = {up, down, center, right, left, .....etc 

または、構造体を書くこともできます

 struct direction
 { private byte mydirectionval;
   {
     public void direction Setup(){mydirection =1;}
     public void direction Setright(){mydirection=2;}
     public void direction Setdown(){mydirection=3;}
     public void direction Setleft(){mydirection=4;}
     public void direction Setcenter(){mydirection=0;}
     public direction Getdirection(){....              

   }
   direction newpath[100] = { ......

それともクラスを書くべきですか

     public static class direction   // not sure use static here ?
     { private int direction =0;
       public const int Up = 1; 
       public const int left =2;
       public const int down = 3;
       public const int right = 4;
       public const int center = 0;
       public int getdirection(){return direction}
       public void int setdirection(int x){direction=x} 
     }
     direction mydir[100] = new direction;
     mydir[0].setdirection(up);  
     // or use it like 
     mydir[0]=mydir.up  //==> i prefer readability of code so this looks better?

OKの人々は列挙型を使用することを提案しますが、それを行うには列挙型の配列mydir [100]が必要です??

4

2 に答える 2

3

enumを使用します。

enum Direction 
{
up = 1, 
down = 2, 
center = 3, 
right = 4, 
left = 5
}

配列で使用できます。

Direction[] myDirection = { Direction.left, Direction.up, Direction.right ... };

また

myDirection[0] = Direction.left; ...
于 2013-01-24T10:19:46.163 に答える
0

列挙型はどうですか?

public enum Direction 
{
   up, 
   down, 
   right,
   left,
   center 
}

それを使用するには:

Direction.up;
于 2013-01-24T10:22:56.830 に答える