iOS開發總結(A0)- #define 與 const

來源:互聯網
上載者:User

標籤:

什麼時候用#define ,什麼時候用const ?

effective objective c item4 中這樣說:

Prefer Typed Constants to Preprocessor #define

1. 避免 #define. 因為無類型資訊,且可能會redefined

2. 在m檔案中定義為 static const(實際上這種處理和#define一樣)

3. 對於global constants,應在標頭檔中申明,在相關的m檔案中定義,首碼為響應的類名稱

如在.h 中,

extern const NSTimerInterval ClassAnimationDuration;

在.m中,

const NSTimerInterval ?ClassAnimationDuration=0.3;

(正如uiapplication 中各種notificaiton一樣)

?

=====================

注意const 的位置,修飾const之前的關鍵字,如

static NSString * const CONSTANT; 是指 const pointer to an NSString

=====================

iOS開發總結(A0)- #define 與 const

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.