5/26 typedef enum使用

在建立遊戲物件時,需要對一些共通的部分做點管理,這邊在協議中使用了這個語法,typedef enum。

typdef


typedef是說,為了給類別一些更清楚的名稱,讓讀程式的人更好理解,比方說有一個code裡面是處理金額,那金額是整數,一般來說會使用int去靜態定義類別,但你也可以用更直覺得做法,將這個變數定義成金額(price):

int money;

變成:

typedef int price;

這表示之後你寫price時,就代表類別是int了。於是:

price money;

這表示你宣告一個變數類別是int(就是price)。

enum

英文好一點的人會知道這是列舉的意思。現在直接介紹用法。

enum {
   one,
   two,
   three
}

若沒有設定值,那就會從零開始,像上面的結果就是:one = 0, two = 1, three = 2。

再看一個例子:

enum {
   one = 1,
   two,
   three,
   five = 5
}

這樣的話就是:one = 1, two = 2, three = 3, five = 5。

typedef enum


直接舉例子吧:

typedef enum{
    kDirectionLeft,
    kDirectionRight
} PhaserDirection;

這就表示列舉的kDirectionLeft = 0, kDirectionRight = 1和PhaseDirection同義。

留言